Java 如何将文本视图更改为int并在数学运算中使用它?
你好,我正在尝试制作一个应用程序,给你2个随机数,用户必须添加2个随机数,所以我的错误是随机数不是整数 我尝试了数百种解释,但都不管用Java 如何将文本视图更改为int并在数学运算中使用它?,java,android,textview,numbers,Java,Android,Textview,Numbers,你好,我正在尝试制作一个应用程序,给你2个随机数,用户必须添加2个随机数,所以我的错误是随机数不是整数 我尝试了数百种解释,但都不管用 public void action(View v){ num1.setText(String.valueOf(randNum1.nextInt(10))); num2.setText(String.valueOf(randNum2.nextInt(10))); userAnswer.getText(); if (nu
public void action(View v){
num1.setText(String.valueOf(randNum1.nextInt(10)));
num2.setText(String.valueOf(randNum2.nextInt(10)));
userAnswer.getText();
if (num1 + num2){
}
}
这就是错误:
二进制运算符“+”的操作数类型错误第一种类型:TextView第二种
类型:文本视图
您收到的错误很好地描述了您的问题 根据您提供的代码片段,我猜num1和num2是对textview对象的引用 不能对textview对象本身执行添加,而是对其内容执行添加 因此,您试图实现的目标是:
public void action(View v){
num1.setText(String.valueOf(randNum1.nextInt(10)));
num2.setText(String.valueOf(randNum2.nextInt(10)));
userAnswer.getText();
String num1String = num1.getText().toString();
String num2String = num2.getText().toString();
int firstNumber = Integer.parseInt(num1String);
int secondNumber = Integer.parseInt(num2String);
if (firstNumber + secondNumber){
// YOUR LOGIC
}
}
或者更好的是,您可以将生成的随机数保存到变量中,稍后再使用它们,如下所示:
public void action(View v){
int randomNumberOne = randNum1.nextInt(10);
int randomNumberTwo = randNum2.nextInt(10);
num1.setText(String.valueOf(randomNumberOne));
num2.setText(String.valueOf(randomNumberTwo));
userAnswer.getText();
if (randomNumberOne + randomNumberTwo){
// YOUR LOGIC
}
}
您可以按照以下步骤操作。我假设randNum1和randNum2是随机数,num1和num2是TextView
public void action(View v){
num1.setText(String.valueOf(randNum1.nextInt(10)));
num2.setText(String.valueOf(randNum2.nextInt(10)));
userAnswer.getText();
int randNumber1 = Integer.parseInt(num1.getText().toString());
int randNumber2 = Integer.parseInt(num2.getText().toString());
if (randNumber1 + randNumber2 ){
//your logic write here
}else{}
}
这回答了你的问题吗@阿里·沙赫里斯塔尼-如果我的回答有帮助,请将其标记为