package com.demo.array;
import java.util.ArrayList;
import java.util.Arrays;
/**
* 关于数组的演示
*
* @author Captain
*
*/
public class ArrayDemo {
public static void main(String[] args) {
// 声明数组
int[] arr = { 1, 10, 8 };
// 输出测试数组
System.out.println("测试的数组为:" + Arrays.toString(arr));
// 通过下角标访问元素,数组的下角标是从0开始的
System.out.println("通过数组的下角标访问元素,元素的下角标从0开始,下角标为0的元素是:" + arr[0]);
// 将Array 转换成 Arraylist
ArrayList<String> arrayList = new ArrayList<String>(Arrays.asList(arr));
}
}
asList
是个泛型,可变参数的函数,所以传入数组的时候,这个数组如果是基本类型数据,会被当作一个对象处理,题中就是int[]
。如果数据定义成Integer[]
的,在asList
akan dikembangkan sebagai berbilang parameter pembolehubah.Masalah lain ialah malah
Integer[]
,它转换之后与ArrayList<String>
juga mengalami masalah ketidakpadanan jenis generik. Ia boleh ditukar dengan mudah menggunakan strim dalam Java8 Dalam versi Java sebelumnya, gelung boleh digunakan Berikut ialah jawapan pada Stack OverflowSenarai<int[]> tidak boleh ditukar secara automatik kepada ArrayList<String>
Adalah disyorkan untuk menyatukan jenis data, int[] arr = { 1, 10, 8 }; digantikan dengan String[] arr = { "1", "10", "8" };