2016-03-26 6 views
-5

У меня есть две строки, содержащие целочисленные значения, как я могу вычесть это в строку.Как вычесть два строковых значения в java

String addquantity = quantity1.getText().toString(); 
String subquantity = quantity2.getText().toString(); 
int final_ = Integer.parseInt(addquantity) - Integer.parseInt(subquantity); 

Я пробовал много методов, но показывал ошибку, помог мне вычесть значение в строке.

+1

Какая ошибка? –

+0

java.lang.NumberFormatException: Invalid int: «null» –

+0

quantity1 и quantity2, содержащие целочисленное значение, например 3, 5 –

ответ

0

Проверьте, что вы проходите ... проверьте мой пример.

package general; 

public class TestNumberFormat { 

    public static void main(String[] args){ 
    String addquantity = "40"; 
    String subquantity = "30"; 
    int final_ = Integer.parseInt(addquantity) - Integer.parseInt(subquantity); 
    System.out.println("PRINT :" + final_); 

    String addquantity1 = "D40"; 
    String subquantity1 = "D30"; 
    int final1_ = Integer.parseInt(addquantity1) - Integer.parseInt(subquantity1); 
    System.out.println("PRINT :" + final1_); 

    } 
} 

Выход:

PRINT: 10

Exception in thread "main" java.lang.NumberFormatException: For input string: "D40" 
at  java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) 
at java.lang.Integer.parseInt(Integer.java:580) 
at java.lang.Integer.parseInt(Integer.java:615) 
at general.TestNumberFormat.main(TestNumberFormat.java:13) 
+0

Даже пространство может привести к проблемам. использование trim() – Suparna

0

Может быть, вы получили место в вашей строке. Используйте следующие

String addquantity = quantity1.getText().toString().trim(); 
String subquantity = quantity2.getText().toString().trim(); 
+0

trim() не решает проблему, потому что проблема одна или оба равны нулю. –

1

Может быть, ваши EditTexts не инициализирована, вам нужно что-то вроде quantity1 = (EditText) findViewById(R.id.YOUR_EDIT_TEXT_ID) для обоих.

Смежные вопросы