ArrayList aList1 = new ArrayList();
ArrayList< String > aList2 = new ArrayList<>();
区别在于不设泛型的话,什么类型的变量都能存进去,但是无法遍历
package exam;
import com.sun.deploy.util.StringUtils;
import java.util.ArrayList;
public class Test1 {
public static void main(String[] args) {
ArrayList aList1 = new ArrayList();
aList1.add(1);
aList1.add(true);
aList1.add("str");
/**
* Exception in thread "main" java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
at com.sun.deploy.util.StringUtils.join(Unknown Source)
at exam.Test1.main(Test1.java:14)
*/
// String join1 = StringUtils.join(aList1, "~");
// System.out.println("join1 = " + join1);
for (int i = 0; i < aList1.size(); i++) {
System.out.println(aList1.get(i));
}
System.out.println("");
ArrayList<String> aList2 = new ArrayList<>();
aList2.add("str1");
aList2.add("2");
aList2.add("true");
String join = StringUtils.join(aList2, "-");
System.out.println("join = " + join);
System.out.println("");
for (String str:aList2) {
System.out.println("str = " + str);
}
}
}
改写一下,集合保存Integer类型
package exam;
import com.sun.deploy.util.StringUtils;
import java.util.ArrayList;
import java.util.Collections;
public class Test1 {
public static void main(String[] args) {
ArrayList<Integer> aList1 = new ArrayList();
aList1.add(11);
aList1.add(12);
aList1.add(14);
//Integer转化为String
String join1 = StringUtils.join(Collections.singleton(aList1.toString()), "~");
System.out.println("join1 = " + join1);
System.out.println("");
for (int i = 0; i < aList1.size(); i++) {
System.out.println(aList1.get(i));
}
}
}