难以置信的简单的android java问题

时间:2010-12-07 18:26:52

标签: java android

如何转换下面的int以在文本视图中将和的结果显示为文本?

得到'无法在原始类型int上调用toString()' - 认为这是toString的意思!?!

public void onClick(View v) {
    // TODO Auto-generated method stub
    txtAnswer = (TextView)findViewById(R.id.txtAnswer);
    editStones = (EditText)findViewById(R.id.editStones);

    int result = 10 + 10;
    txtAnswer.setText(result.toString());
}

5 个答案:

答案 0 :(得分:4)

txtAnswer.setText(String.valueOf(result));

或者这也有效:

txtAnswer.setText("result is : "+result);

答案 1 :(得分:3)

使用String.valueOf(result)

答案 2 :(得分:1)

int是Java中的基本类型,意味着它不是类,因此没有toString()方法。您可以使用Integer类或只使用String.valueOf(result)。

答案 3 :(得分:0)

关于java的一个更烦人的事情是它们仍然有原语。所以你必须使用另一个类的静态方法,String.valueOf()或Integer.toString()。

答案 4 :(得分:0)

您可以使用以下多种格式进行转换-

  1. 使用Integer.toString(int)进行转换

    int number = -782;
    String numberAsString = Integer.toString(number);
    
  2. 使用String.valueof(int)进行转换

    String.valueOf(number);
    
  3. 使用Integer(int).toString()转换

    String numberAsString = new Integer(number).toString();
    
  4. 使用String.format()转换

    String numberAsString = String.format ("%d", number);