2013-08-29 2 views
-1

Проблема в том, что у меня есть цикл for в android, и, похоже, он работает в обратном порядке.Для результатов цикла назад ожидаемого порядка

Вот код:

for(i=0;i<strlent;i++) 
{ 
    //ch=st.charAt(i); 
//disp(String.valueOf(ch)); 
disp(String.valueOf(i)); 
} 

У меня есть строка, и хотел бы получить каждые символы из него, но если я кормлю в «младенце» он работает электронные б-а-б. Я проверил значение i, и он работает как 3-2-1-0. Я серьезно не понимаю, почему так происходит.

Это моя Индик.точки функция

public void disp(String st) // this function is used to check with message boxes 
{ 
    AlertDialog.Builder adb = new Builder(this); 
    adb.setTitle("Testing"); 
    adb.setMessage(st); 
    adb.show(); 
} 
+6

Может быть, ваш телефон с ног на голову. Нет, серьезно, но этого не может быть. Проблема заключается в методе disp() или в другом месте. – Kayaman

+3

Может быть, вы заполнили свой связанный список или массив в неправильном порядке ... – Gerret

+0

общественного недействительными дисп (String ул) // эта функция используется для проверки коробками сообщений \t { \t \t AlertDialog.Builder ADB = новый Builder (это); \t \t adb.setTitle ("Тестирование"); \t \t adb.setMessage (st); \t \t adb.show(); \t \t \t} –

ответ

1
String str = "Let Me Reverse"; 

System.out.println("\nIn order.."); 

for(int i = 0; i < str.length(); i++){ 
    System.out.print(str.substring(i, i + 1)); 
} 

System.out.println(); 

for(int i = 0; i < str.length(); i++){ 
    System.out.print(str.charAt(i)); 
} 

System.out.println(); 

for(char ch : str.toCharArray()){ 
    System.out.print(ch); 
} 

System.out.println("\nIn reverse order.."); 

for(int i = str.length() - 1; i >= 0; i--){ 
    System.out.print(str.charAt(i)); 
} 
+0

переменная «strlent» является возвращаемым значением st.length(), а функция ur даст символы в порядке, но это будет работать в обратном порядке –

+0

Что произойдет, когда i == 2, например, -> 'st.substring (2,1)', что он вернет? – g00dy

+0

@RakeshBk Только последний цикл будет напечатан в обратном порядке, как указано в моем ответе. –

0
String name = "Hello"; 

for(int i=name.length()-1;i>=0;i--){ 
    System.out.println(name.charAt(i)); 
} 
Смежные вопросы