2016-03-26 4 views
0

Я этот метод, который, как предполагается сравнить строку в целое число в JavaJava Сравнить строку в целое число в Java

Моя строка используется как длинное целое число, то я изменил его к string- Это должен перебирать номер строки по номеру и сравнить его с индексом цикла

Вот мой код

private StringBuilder convert(long wordSum) { 

    String tempLongString = new String(); 
    numberString2 = null; 

    tempLongString = String.valueOf(wordSum); 



    for(int i = 0; i < tempLongString.length(); i++) { 
     for(int x = 0; x < 10; x++) { 
      if(x == tempLongString.charAt(i)) {    
       numberString2.append(letters[x]); 
       System.out.println(numberString2); 
      } 
     } 
    } 


    return numberString2; 
} 

Я знаю, что есть много кода здесь, что я не говорю о том, но сейчас им любопытно, почему он не работает в цикле. Оператор if должен работать

Для людей, спрашивающих: Длинный номер 2343638086, который не находится в строке tempLongString

+0

Вы пытались проверить, что возвращает '# charAt'? Если нет: сделайте это сейчас. – Tom

+0

@Tom - charAt возвращает правильные значения. –

+1

Значит, вы не знаете, что возвращает '# charAt'. Пожалуйста, сделайте то, что я сказал: посмотрите, что он делает: https://docs.oracle.com/javase/8/docs/api/java/lang/String.html#charAt-int- – Tom

ответ

-1

Вы уверены, что он не работает цикл? Попробуйте помещать что-то еще в этот оператор печати, чтобы убедиться, что он ничего не делает. Я не могу полностью проверить ваш код, потому что я не знаю, что такое numberString2 или что такое буквы [].

если numberString2 является StringBuilder, вы можете объявить его как новый StringBuilder вместо нулевого, возможно?

+0

. Я добавил что-то еще в println - он почему-то не обращается к оператору IF –

+0

, возможно, потому что x never == char в tempLongString, попробуйте добавить оператор печати, показывающий, что такое tempLongString после того, как вы это сделали, и посмотрите, что это на самом деле. –

+0

Не «может быть», конечно, это не пройдет мимо этого сравнения. Его символы не будут отмечены. – Tom

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