2014-10-18 2 views
-2

Как пробиться из forloop и вернуться в начало цикла while. Моя функция должна возвращать 111221, когда я ввожу 1211, поскольку есть один, один 2 и два 1. Если у кого-нибудь есть какие-то идеи, я бы очень признателен.Как вернуться к началу цикла while java

public static String occurence(String input) { 

    int s = 0; 
    String out = ""; 

    int count = 0; 

    while(s < input.length()) { 

     int num = getInt(input, s); 

     for(int r = s; r < input.length(); r++) { 

      if(num == getInt(input, r)) { 
       count++; 
      } else { 
       System.out.println(count); 

       out += count; 
       out += num; 
       s += count; 
       count = 0; 

       // Jump to start of while loop 
      } 
     } 
    } 
    return out; 
} 
+0

, что ваш метод GetInt и то, что он возвращается? укажите полный код. – Krishna

+0

Или просто используйте оператор break для выхода из цикла. – Krishna

ответ

1

Используйте оператор разрыва

public static String occurence(String input){ 

int s = 0; 
String out = ""; 

int count = 0; 


while(s<input.length()){ 


    //System.out.println(s); 

    int num = getInt(input, s); 

    for(int r = s; r<input.length(); r++){ 


     if(num == getInt(input, r)){ 

      count++; 


     }else{ 

      System.out.println(count); 

      out+=count; 
      out+=num; 
      s+=count; 
      count = 0; 

      break; 



     } 

    } 

} 

return out; 


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