[英]Operator '+' cannot be applied to 'int', 'java.lang.Object'
我剛剛開始學習如何操作數組列表。
我在計算myArray的總和時遇到了一個小問題 ------> 錯誤是Operator '+' cannot be applied to 'int', 'java.lang.Object'
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
ArrayList<Integer> myArray = new ArrayList<Integer>();
myArray.add(6);
myArray.add(2);
myArray.add(1);
int x = 0;
Iterator myIterator = myArray.iterator();
while (myIterator.hasNext()){
System.out.println(myIterator.next());
x = x + myIterator.next();
}
}
迭代器應該被參數化。 不指定Integer
類型,編譯器假定java.lang.Object
類型不應用運算符+
。
Iterator<Integer> myIterator = myArray.iterator();
從技術上講, +
運算符不適用於String
以外的對象,但Integer
是原始類型int
的包裝類。 因此,在這種情況下,編譯器應用拆箱來獲取int
,其中定義了+
運算符。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.