2016-11-22 11 views
1

Так что эй, ребята, я создаю калькулятор, потому что я искал в google, какая хорошая стартовая программа для создания при изучении Java и калькулятора. Да, я довольно новичок в java, поэтому, пожалуйста, несите меня.Как удалить строку из ее длины?

Ниже приведен фрагмент того, что я хотел, чтобы что-то было сделано. У меня проблемы с попыткой создать кнопку backspace. Это та часть, где, когда я нажимаю кнопку, она будет что-то делать. result вот значение моего jtextfield. Я хочу, чтобы jbutton должен был удалить один символ/число из jtextfield. Я попробовал value = value.length() - 1; и понял, что я не могу вычесть 1 из строки lol. Кто-нибудь знает и помогает новичкам?

private void jButton18ActionPerformed(java.awt.event.ActionEvent evt) {           
      String value = result.getText();  
      value = value.length() - 1; 

      result.setText(value); 
    }  

Дополнительно: ~ О, а также, может кто-нибудь дать мне совет о том, как, в самом простом пути, так что, когда я нажимаю кнопку + из калькулятора, то было бы добавить первый номер (а), введенный и введенное второе число (и). Это было бы очень признательно! Благодарю.

+0

'value' является строкой. 'value.length()' является целым числом. Нет смысла пытаться назначить первое в последнее. –

+2

Вы ищете 'value.substring (0, value.length() - 1)'? –

+0

@ AndyTurner да это! Спасибо, дорогой! неудивительно, что он не будет -1, потому что я вычитал строку как то, что сказал барак xD oh geez –

ответ

1
String value = "abc"; 
System.out.println(value.substring(0, value.length() - 1)); 

Попробуйте это.

+0

спасибо! это помогло мне! Я очень ценю эту помощь. –

2

Все, что вам нужно сделать, это использовать substring():

String value = result.getText();  
String newValue = value.substring(0, value.length() - 1); 

result.setText(newValue); 
+0

Спасибо! это очень помогло мне! Я немного смущен, хотя и с кодом, но я попытаюсь изучить его с тех пор, как я пытаюсь учиться. В любом случае, еще раз спасибо! –

+0

Не беспокойтесь, я знаю, как сильно это может быть в начале! Просто помните, чтобы поддержать полезные ответы! :) –

+0

Я сделал! но у меня есть менее 15 репутации xD, поэтому я записал, что думаю, что хе-хе снова спасибо. РЕДАКТИРОВАТЬ: О, мы идем! получил 23 сейчас: o <3 –

1

Дополнительный вопрос:

Если я правильно понимаю ваш вопрос, вы вводите значения в поле и получить их в виде строк. Поэтому, если вы должны были ввести два числа, разделенные пробелом, это должно сработать.

String input = "12 3"; 
String[] numbers = input.split(" "); 

int sum = Integer.parseInt(numbers[0]) + Integer.parseInt(numbers[1]); 
System.out.println(sum); 

ВЫВОД -> 15

+0

Итак, пространство там есть сплиттер? : o ничего себе, это отличная идея. У меня также возникла идея , создающая две переменные и сохраняющие числа там, но i не умеет отделяться после нажатия кнопки добавления xD Я попробую! Благодаря! –

+0

Метод split принимает любое регулярное выражение, которое вы берете и разделяете с ним, поэтому в этом примере пустое пространство "". Вы также можете иметь строку типа «12.3» и использовать split («.»), Чтобы получить подстроки «12» и «3». Надеюсь, это сработает для вас :) –