在我的代码中,我称:
myArray[ (Integer) compoundButton.getTag() ] = true;
而且有效。但是Android Studio给我警告,说强制转换为(Integer)是多余的。但是,如果删除类型转换,则由于int&java.lang.Object类型不兼容而引发错误。我做错了什么,该怎么做才能消除此警告?
最佳答案
不,您的代码没有任何内容,显然AS在这里是错误的,在我的机器上是相同的结果,与Android无关。
int[] ints = new int[] {};
Object foo = new Object();
ints[((int) foo)] = 1; // complains
(您可能想要转换为
int
(不是Integer
),但这不能解决问题。)顺便说一句,如果您提取变量
int indexFromTag = (int) button.getTag();
myArray[indexFromTag];
AS不会抱怨。
关于java - Android Studio会提供多余的强制转换警告,但并不是真正多余的,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27771415/