Java ArrayList正确的赋值方式

直接赋值B=A,这是赋值了引用 ,如下面的例子

//'main' method must be in a class 'Rextester'.
//Compiler version 1.8.0_111

import java.util.*;
import java.lang.*;
import java.util.ArrayList;
import java.util.Arrays;

class Rextester
{  
    public static void main(String args[])
    {
        System.out.println("Hello, World!");
		ArrayList<String> A = new ArrayList<String>();
	    A.add("1");
		A.add("2");
		System.out.println(A);
		
		ArrayList<String> B;
		B=A;
		System.out.println(B);
		
		A.clear();
		System.out.println(B);
		
    }
}

正确的方式为使用B.addAll(A)

//'main' method must be in a class 'Rextester'.
//Compiler version 1.8.0_111

import java.util.*;
import java.lang.*;
import java.util.ArrayList;
import java.util.Arrays;

class Rextester
{  
    public static void main(String args[])
    {
        System.out.println("Hello, World!");
		ArrayList<String> A = new ArrayList<String>();
	    A.add("1");
		A.add("2");
		System.out.println(A);
		
		ArrayList<String> B = new ArrayList<String>();
		B.addAll(A);
		System.out.println(B);
		
		A.clear();
		System.out.println(B);
		
    }
}

 参考Java两个list直接赋值?达咩达咩! - 百度文库

欢迎关注工众耗:微程序学堂

猜你喜欢

转载自blog.csdn.net/u013288190/article/details/124574389
今日推荐