类型不匹配:无法从 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)
等
我的一小部分代码有点问题:它说
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)
等