类型不匹配:无法从 boolean 转换为 int

Type mismatch: cannot convert from boolean to int

我的一小部分代码有点问题:它说

Type mismatch: cannot convert from boolean to int.

有人可以帮帮我吗?我的代码如下:

ArrayList<Integer> tower = new ArrayList<Integer>();
int Kilo = tower.add(1);
int Jan tower.add(2);

问题出在 int Kilo = tower.add(1);add 方法 returns 一个布尔值,大多数人不会费心存储它,因为它始终 returns 为真。这是因为 ArrayList 的超类 Collection 使用该布尔值来表示集合是否因此而更改(对于 ArrayList,它总是更改,但其他集合可能不是这样)。您正在尝试将此布尔值存储到 int 并命名为 'Kilo',因此出现了问题。

根据你所说的,我认为你想要以下内容:

tower.add(1); //Adds 1 to the ArrayList
int Kilo = 1; //Stores 1 into Kilo

您只需执行 tower.add(1);tower.add(2);,除非您还试图将变量转换为 ArrayList 的内容。 只需使用: tower.add(1); //Adds 1 to the ArrayList tower.add(2); //Adds 2 to the ArrayList

据我从您提供的代码中了解到,您需要使用 tower.get(1) 等而不是 tower.add(1)