Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

java copy

作者:尛丸子的天真▍我学不会゜   发布日期:2025-03-19   浏览:88

// Java Copy 示例代码

import java.util.Arrays;

public class JavaCopyExample {
    public static void main(String[] args) {
        // 数组复制示例
        int[] originalArray = {1, 2, 3, 4, 5};
        int[] copiedArray = Arrays.copyOf(originalArray, originalArray.length);

        System.out.println("Original Array: " + Arrays.toString(originalArray));
        System.out.println("Copied Array: " + Arrays.toString(copiedArray));

        // 对象复制示例(浅拷贝)
        Person originalPerson = new Person("Alice", 30);
        Person copiedPerson = originalPerson.clone();

        System.out.println("Original Person: " + originalPerson);
        System.out.println("Copied Person: " + copiedPerson);

        // 深拷贝示例
        Person deepCopiedPerson = originalPerson.deepClone();
        System.out.println("Deep Copied Person: " + deepCopiedPerson);
    }
}

class Person implements Cloneable {
    private String name;
    private int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    // 浅拷贝
    @Override
    protected Object clone() {
        try {
            return super.clone();
        } catch (CloneNotSupportedException e) {
            return null;
        }
    }

    // 深拷贝
    public Person deepClone() {
        return new Person(this.name, this.age);
    }

    @Override
    public String toString() {
        return "Person{name='" + name + "', age=" + age + "}";
    }
}

解释说明:

  1. 数组复制:使用 Arrays.copyOf 方法来复制一个整数数组。该方法会创建一个新的数组,并将原数组的内容复制到新数组中。
  2. 对象浅拷贝:通过实现 Cloneable 接口并重写 clone 方法,可以实现对象的浅拷贝。浅拷贝只会复制对象的基本数据类型和引用类型的引用,不会创建新的对象实例。
  3. 对象深拷贝:通过自定义 deepClone 方法,可以实现对象的深拷贝。深拷贝会递归地创建对象及其所有引用对象的新实例,确保原始对象和复制对象之间没有共享引用。

如果你需要更多关于 Java 复制的详细信息,请随时提问!

上一篇:java日期格式化yyyymmdd

下一篇:java bigdecimal比较大小

大家都在看

java连接数据库的代码

ubuntu 卸载java

java sort用法

java collections.sort

java file类的方法

java 判断

java时间数据类型

java 时间加一天

java demo

java 截取

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站