Java 方法toString无法应用于Android Studio中的给定类型错误

Java 方法toString无法应用于Android Studio中的给定类型错误,java,android,Java,Android,我试图通过创建一个计算器应用程序来学习Android。我有ID为button0到button9的按钮。单击按钮时,它们的值应该添加到上面的TextViews中,但我似乎无法将整数转换为字符串。我觉得Android studio将我的toString方法设置为integer.toString类型 代码: int[] buttonId = {R.id.button0, R.id.button1, R.id.button2, R.id.button3, R.id.button4, R.

我试图通过创建一个计算器应用程序来学习Android。我有ID为button0到button9的按钮。单击按钮时,它们的值应该添加到上面的TextViews中,但我似乎无法将整数转换为字符串。我觉得Android studio将我的toString方法设置为integer.toString类型

代码:

int[] buttonId = {R.id.button0, R.id.button1, R.id.button2, R.id.button3, R.id.button4,
        R.id.button5, R.id.button6, R.id.button7, R.id.button8, R.id.button9};


Button[] bt = new Button[10];
for (int i = 0; i < 10; i++) {       //If this doesn't work then do it separately.
    final int I = i;
    bt[I] = (Button) findViewById(buttonId[I]);

    bt[I].setOnClickListener(
            new Button.OnClickListener() {
                public void onClick(View v) {

                    textViewAbove.append(toString(I));
                    //Enter action methods here.
                }
            }
    );
}

请注意,代码位于MainActivity类中的onCreate方法内

应该使用Integer.toStringI

应该使用Integer.toStringI

您正试图调用Button.OnClickListener的匿名子类的方法字符串toString。这个方法不接受任何参数,所以当您尝试给它一个int参数时,它会抱怨


您应该调用其他一些接受int或Integer参数的toString方法,例如Integer.toString。

您正在尝试调用Button.OnClickListener的匿名子类的方法String toString。这个方法不接受任何参数,所以当您尝试给它一个int参数时,它会抱怨

您应该调用其他一些接受int或Integer参数的toString方法,例如Integer.toString。

从对象类继承的toString方法不接受任何参数

相反,您可以使用隐式转换,如上面的TextViewUpper.append+I; 或者更有利地选择TextViewUpper.appendString.valueOfI

从对象类继承的toString方法不接受任何参数

相反,您可以使用隐式转换,如上面的TextViewUpper.append+I; 或者更有利地选择TextViewUpper.appendString.valueOfI

将int I替换为

并删除toString方法,只需使用

textViewAbove.append(I);
将int I替换为

并删除toString方法,只需使用

textViewAbove.append(I);

你的toString方法在哪里?你不需要最后的int I=I@3kings此语句-textViewUpper.appendtoStringI;@MuratK的可能副本。最初我没有这样做,但是在没有final的情况下访问外部类元素时出现了一些错误@3kings此语句-textViewUpper.appendtoStringI;@MuratK的可能副本。起初我并没有这样做,但在访问外部类元素时突然出现了一些错误,而没有使用final。
textViewAbove.append(I);