Как я и написал в теме, валидатор видит бесконечный цикл. А при выполнении программы кнопкой Запуск все получается.
Помогите, пожалуйста, разобраться.
package com.javarush.task.task07.task0712;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
/*
Самые-самые
*/
public class Solution {
private static void Sort (ArrayList<String> s) {
int len = s.size();
String buf=null;
for (int i=0; i<len-1;i++) {
for (int j=0; j<len-1; j++){
if (s.get(j).length() > s.get(j+1).length())
{ buf = s.get(j); s.set(j, s.get(j+1)); s.set(j+1, buf) ; }
}
}
}
public static void main(String[] args) throws IOException {
//напишите тут ваш код
ArrayList<String> strings = new ArrayList<String>();
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
for (int i=0;i<10; i++){
String streeng = reader.readLine();
strings.add(streeng);
}
ArrayList<String> newstr = new ArrayList<String>(strings.size());
for (int j=0; j<strings.size(); j++) {
newstr.add(j,strings.get(j));
}
Sort(strings);
String shortest = strings.get(0);
String longest = strings.get(strings.size()-1);
// System.out.println(shortest);
// System.out.println(longest);
// System.out.println("");
/** for (int k=0; k<strings.size(); k++) {
System.out.println(newstr.get(k));
}*/
int g1 = newstr.indexOf(shortest);
int g2 = newstr.indexOf(longest);
if (g1 < g2 ) {
System.out.println(g1+1);
} else if (g1 > g2 ) System.out.println(g2+1);
}
}