Добавление двух чисел внутри строки

Кажется, что одно из ваших значений, с ключом свойства «значение» не определено. Проверьте, что i1, i2 и __i определены перед выполнением операторов if:

var i1 = document.getElementById('i1');
var i2 = document.getElementById('i2');
var __i = {'user' : document.getElementsByName("username")[0], 'pass' : document.getElementsByName("password")[0] };
if(i1 && i2 && __i.user && __i.pass)
{
    if(  __i.user.value.length >= 1 ) { i1.value = ''; } else { i1.value = 'Acc'; }

    if(  __i.pass.value.length >= 1 ) { i2.value = ''; } else { i2.value = 'Pwd'; }
}
-3
задан Aurora 17 January 2019 в 00:39
поделиться

2 ответа

Ну, вы не можете конвертировать String result = "10+23"; в int, потому что у вас есть + там. Что именно ты пытаешься сделать? Если вы хотите взять 2 строки и получить их результат, то вот код:

String a = "10";
String b = "23";
int result = Integer.parseInt(a) + Integer.parseInt(b);

//The sum of the two values as a String
String calculatedResult = String.valueOf(result);
Log.i("Tag", calculatedResult); //Outputs 33
0
ответ дан Syed Sadman 17 January 2019 в 00:39
поделиться

Это дает ошибку, потому что "10+23" не является числом , оно содержит символ +, а метод Integer.parseInt(String s); конвертирует только строки вроде "23" или "10.5"
[118 ] Таким образом, чтобы решить проблему, попробуйте преобразовать только число травления, например,

String number1 = "10";
String number2 = "23";
int calculatedResult = Integer.parseInt(number1)+Integer.parseInt(number2);
Log.e(TAG, String.valueOf(calculatedResult);

для получения дополнительной информации и примеров о Integer.parseInt(String s);, щелкните здесь

0
ответ дан Simox Hênda 17 January 2019 в 00:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: