2013-12-05 1 views
0

Я создал приложение таблицы таблиц. У меня есть кнопка расчета с событием action. Итак, во-первых, событие action получит getText из текстовой поля с полем. После этого он преобразует строку в int. Но я хочу проверить одну вещь, прежде чем преобразовать строку в int. То есть, я хотел бы проверить, если индекс строки символов [0] равно «-», если да, то он будет изменен на 0. Я попытался Погружает если условие какЗаменить конкретный индекс символа строки на 0

if(text.charAt[0] == "-"){text.setCharAt(0, "0")} 

но он говорит, что условие не сопоставимо с char в строку. Есть ли другой способ заменить индексный символ на 0?

Вот код действия Слушатель:

calculate = JButton; result = JTextArea; field = JTextField; 
calculate.addActionListener(new ActionListener(){ 
    public void actionPerformed(ActionEvent evt) { 
    result.setText(null); 
    String text = field.getText(); 
    Integer i = Integer.valueOf(text); 
    for (int j = 1; j <= 10; j++){ 
    result.append((i + " " + "x" + " " + j + "=" + " " +(i * j)) + "\n"); 
}}); 

Я попытался код ниже, но я не могу понять, как присвоить «текст» на «ул»:

if(text.charAt(0) == '-'){ 
    StringBuilder str = new StringBuilder(text); 
    str.setCharAt(0, '0'); 
}   

Кроме того, когда новая строка имеет значение «str» вместо «text», я не мог назначить str как строку, например StringBuilder str = new StringBuilder(str);. Я в основном застрял в этой линии.

ответ

1

В:

text.charAt[0] == "-" 
  • text.charAt[0] является символ.
  • "-" является Строка.

Кроме того, вы никогда не должны использовать == на персонаже или в строке. Вместо этого используйте equals().

Попробуйте

text.charAt[0].equals('-'); 
+0

обоих кодов работает нормально, но после того, что, когда я ставлю 'Integer I = Integer.valueOf (ул),' вместо «текст» , он не принимает из-за того, что str является строковым построителем. @ Arnaud Denoyelle – user1946440

+1

@ user1946440 Использовать 'StringBuilder # toString()': 'Integer.valueOf (str.toString());' –

+0

@ user1946440 преобразовать String Builder в String by используя метод 'toString()'. –

0

попробовать if(text.charAt[0] == '-'){text.setCharAt(0, '0')}

"а" - Строка

'а' - обугливается

0
text.charAt[0] == "-" 

В этой строке проверки строка "-" изменить его как '-'

Вместо == используйте equals() следующим образом:

text.charAt[0].equals('-') 

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

  • Нет связанных вопросов^_^