Программа должна выводить на экран самую короткую строку, если она была раньше самой длинной
Программа должна выводить на экран самую длинную строку, если она была раньше самой короткой.
С позициями сверху проблема. Что не так?
public class Solution {
public static void main(String[] args) throws Exception {
String c = "";
ArrayList<String> gap = new ArrayList<>();
int indexmin = 0;
int indexmax = 0;
Scanner sc = new Scanner(System.in);
for (int i = 0; i<10; i++){
gap.add(sc.nextLine());
}
String max = Collections.max(gap);
String min = Collections.min(gap);
for (int i = 0; i < gap.size(); i++) {
c = gap.get(i);
if (c.length() <= min.length()) {
indexmin = gap.indexOf(c);
} else if (c.length() >= max.length()) {
indexmax = gap.indexOf(c);
}
}
if (indexmax > indexmin){
System.out.println(gap.get(indexmin));
}else{
System.out.println(gap.get(indexmax));
}
}
}