Этот код был рожден в муках))))Может он и урод)))но валидатор говорит
Программа должна вывести на экран все четные числа, считанные из файла, отсортированные по возрастанию.
Программа выводит слишком много строк.
но из
5
8
-2
11
3
-5
2
10
она получает
-2
2
8
10
))))))))Что чтооо не нравится ВЛАСТЕЛИНУ)))???
package com.javarush.task.task13.task1326;
import java.io.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;
/*
Сортировка четных чисел из файла
*/
public class Solution {
public static void main(String[] args) throws IOException {
List<String> list = new ArrayList<String>();
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String name = reader.readLine();
//create FileInputStream object
FileInputStream fin = new FileInputStream(name);
String str="";
int s =0;
while(s!=-1) {
s = fin.read();
// if (s==-1) break;
if (s!=10 && s!=-1) {
str=str+(char)s;
}else {
list.add(str);
str="";
}
}
fin.close();
for (int j=0;j<list.size();j++){
if ((Integer.parseInt(list.get(j)))%2!=0){ list.remove(j);j=0;}
}
int k;
String ss;
for (int j=0;j<list.size()-1;j++){
if (Integer.parseInt(list.get(j+1))<Integer.parseInt(list.get(j)))
{
k=Integer.parseInt(list.get(j));
list.set(j,list.get(j+1));
list.set(j+1,k+"");
}
}
for (int j=0;j<list.size();j++){
System.out.println(list.get(j));
}
}
}