Преобразование double в строку

Я не уверен, что это я или что, но у меня проблема с преобразованием двойного в строку.

вот мой код:

double total = 44; String total2 = Double.toString(total); 

Я делаю что-то неправильно или я не вижу здесь шага.

При попытке преобразовать это я получаю ошибку NumberFormatException .

 totalCost.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { try { double priceG = Double.parseDouble(priceGal.getText().toString()); double valG = Double.parseDouble(volGal.toString()); double total = priceG * valG; String tot = new Double(total).toString(); totalCost.setText(tot); } catch(Exception e) { Log.e("text", e.toString()); } return false; } }); 

Я пытаюсь сделать это в onTouchListener. Сообщение о большем количестве кодов, в основном, когда пользователь касается windows edittext, я хочу, чтобы информация вычисляла заполнение windows edittext.

 double total = 44; String total2 = String.valueOf(total); 

Это преобразует double в String

Этот код компилируется и работает для меня. Он преобразует double в строку, используя вызовы, которые вы пробовали.

 public class TestDouble { public static void main(String[] args) { double total = 44; String total2 = Double.toString(total); System.out.println("Double is " + total2); } } 

Я озадачен тем, что вы видите NumberFormatException. Посмотрите на трассировку стека. Я предполагаю, что у вас есть другой код, который вы не показываете в своем примере, вызывающий исключение этого исключения.

Используя Double.toString (), если число слишком мало или слишком велико, вы получите научную нотацию следующим образом: 3.4875546345347673E-6. Существует несколько способов более эффективного управления форматом выходной строки.

 double num = 0.000074635638; // use Double.toString() System.out.println(Double.toString(num)); // result: 7.4635638E-5 // use String.format System.out.println(String.format ("%f", num)); // result: 0.000075 System.out.println(String.format ("%.9f", num)); // result: 0.000074636 // use DecimalFormat DecimalFormat decimalFormat = new DecimalFormat("#,##0.000000"); String numberAsString = decimalFormat.format(num); System.out.println(numberAsString); // result: 0.000075 

Использовать String.format () будет наилучшим удобным способом.

Исключением, вероятно, является вызов parseDouble (). Убедитесь, что значения, присвоенные этой функции, действительно отражают двойной.

 double priceG = Double.parseDouble(priceGal.getText().toString()); double valG = Double.parseDouble(volGal.toString()); double priceG = Double.parseDouble(priceGal.getText().toString()); double valG = Double.parseDouble(volGal.toString()); double priceG = Double.parseDouble(priceGal.getText().toString()); double valG = Double.parseDouble(volGal.toString()); 

оно работает. должен быть повторяющимся.

 double total = 44; String total2= new Double(total).toString(); 

этот код работает

 double priceG = Double.parseDouble(priceGal.getText().toString()); double valG = Double.parseDouble(volGal.toString()); 

Один из них бросает исключение. Вам нужно добавить некоторые записи / печать, чтобы узнать, что находится в volGal и priceGal – это не то, что вы думаете.

double.toString() должен работать. Не тип переменной Double , но сама переменная double .

Просто используйте следующее:

 doublevalue+""; 

Это будет работать для любого типа данных.

Пример:

 Double dd=10.09; String ss=dd+""; 

Как насчет того, когда вы делаете

 totalCost.setText(tot); 

Вы просто делаете

 totalCost.setText( "" + total ); 

Где “” + <переменная> преобразует его в строку автоматически

Используйте class StringBuilder , например:

 StringBuilder meme = new StringBuilder(" "); // Convert and append your double variable meme.append(String.valueOf(doubleVariable)); // Convert string builder to string jTextField9.setText(meme.toString()); 

Вы получите желаемый результат.

  • Понимание использования Spring @Autowired
  • Почему в Java существуют classы-оболочки?
  • Ошибка: Не удалось запустить SDK-инструмент mksdcard
  • Как программно удалить файлы на Android?
  • Повышение числа на Java
  • Как выйти из приложения Java из программы
  • Файл Android FileInputStream для чтения () в String
  • Исходный код исходного кода Java
  • Что такое использование BaseColumns в Android?
  • Рассчитать количество будних дней между двумя датами в Java
  • Рекомендуемый способ форматирования чисел в локали?
  • Давайте будем гением компьютера.