java - “int无法转换为ArrayList”

时间:2016-09-09 09:45:48

标签: java arrays arraylist int

我正在尝试创建一个二维ArrayList,它将存储整数,字符串和&布尔值。

我已经进入了第一个int,但是我得到了一个红色的波形,并且错误“int无法转换为ArrayList”。

    ArrayList[][] qarray= new ArrayList [10][5];

    qarray[0][0]= 1;

BTW,谷歌搜索“int无法转换为ArrayList”这句话给了我六个结果。

8 个答案:

答案 0 :(得分:1)

错误是正确的。

您的数组类型是ArrayList。您只能在该数组中插入ArrayLists。

如果你想存储int,你的声明应该是。

int[][] qarray= new int [10][5];

而且,正如有人评论的那样,你不能再在这个数组中存储字符串和布尔值了。

答案 1 :(得分:0)

试试这样:

List<Integer> qarray = new ArrayList<>();
qarray.add(1);

答案 2 :(得分:0)

ArrayList<Integer> list = new ArrayList<>();

list.add(1);

答案 3 :(得分:0)

根据javadoc,您无法创建ArrayList数组。改为使用2D数组。

无论如何你需要2D ArrayList,你应该尝试过这种方式:

ArrayList<ArrayList<Integer>> listOfLists = new ArrayList<>();

ArrayList<Integer> list1 = new ArrayList<>();
list1.add(1);
list1.add(2);

ArrayList<Integer> list2 = new ArrayList<>();
list2.add(5);

listOfLists.add(list1);
listOfLists.add(list2);

答案 4 :(得分:0)

首先我相信你需要数组而不是ArrayList。可以如下创建2d数组。

int[][] arr = new int [10][10];

您的下一个问题是您尝试将int常量1分配给其他类型的变量。以下示例显示如何将int分配给数组元素

arr [0][0] = 1;

答案 5 :(得分:0)

你要添加int,String和boolean然后你可以使用

ArrayList<ArrayList<Object>> listOfLists = new ArrayList<ArrayList<Object>>();

它会帮助你

答案 6 :(得分:0)

ArrayList [] [] qarray = new ArrayList [10] [5];

基本上,您的代码会创建二维数组列表对象(50个数组列表对象)。

qarray [0] [0] = 1;

您正在尝试分配整数,您需要在其中创建一个ArrayList对象。它需要像

这样的东西
     qarray[0][0]= new ArrayList(); 

然而,这不符合您的目标。以下代码可以满足您的目标:

    ArrayList[] qarray = new ArrayList[10];
    qarray[0]= new ArrayList();
    qarray[0].add(1);

    qarray[1]= new ArrayList();
    qarray[1].add(true);

    qarray[2]= new ArrayList();
    qarray[2].add("hello");

答案 7 :(得分:0)

ArrayList<Integer>[][] list = new ArrayList[10][10];
 list[0][0] = new ArrayList<>();
list[0][0].add(new Integer(10);

尝试这样。