Как передать двойное значение текстовому полю в Android

В Android я устанавливаю текст текстового представления как ответ на вычисление, которое является double типом данных.

Когда двойное значение имеет значение 5, текстовое представление получает строку: 5.0 .

Код:

 double result = number1/number2; String finalresult = new Double(result).toString(); textView1.setText(finalresult); 

Как форматировать текст textView так, чтобы он показывал двойное значение в согласованном формате?

Solutions Collecting From Web of "Как передать двойное значение текстовому полю в Android"

В Android назначьте double для textView:

Используйте Double.toString:

 result = number1/number2 String stringdouble= Double.toString(result); textview1.setText(stringdouble)); 

Или вы можете использовать NumberFormat:

 Double result = number1/number2; NumberFormat nm = NumberFormat.getNumberInstance(); textview1.setText(nm.format(result)); 

Для обеспечения точности 3 единиц:

 private static DecimalFormat REAL_FORMATTER = new DecimalFormat("0.###"); textview1.setText(REAL_FORMATTER.format(result)); 

Попробуй это

  TextView tv = (TextView)findViewById(R.id.button1); Double num = (double)4+6; if(num%2==0) { tv.setText(num.intValue()+""); //if you want to remove the decimal place } else { tv.setText(num+""); } 

Лучший способ

  String finalresult = String.valueof(result); textview.setText(finalresult); 
 Double result = number1/number2;//number1 and number2 are double textView1.setText(""+result); 

Используйте указанные выше две строки для установки значения в текстовое окно

Вы можете использовать NumberFormat, а затем вы можете сделать свой обычный код:

  result = number1/number2 String finalresult = new Double(result).toString(); NumberFormat nf = NumberFormat.getInstance(); nf.setMinimumFractionDigits(0); nf.setMaximumFractionDigits(0); finalresult= nf.format(result); textView1.setText(finalresult); 

И там вы можете установить максимум или, альтернативно, вы можете применить к целому числу.

 double number1 =1.0; double number2 = 10.4; int result = (int) (number1/number2); textView1.setText(String.valueOf(result)); 

Разница между ними заключается в том, что первая часть будет округлять число до ближайшего целого числа и будет более точным приближением, в то время как приведение к целому числу приведет к тому, что результат будет равен 3,9, а 3 – различию. Поэтому я рекомендую использовать NumberFormat

Самый простой способ text.setText(a+"")