Содержимое моего файла d:\source.txt следующее:1235356893 (без пробелов сплошняком 10 цифр)
До определения четности решил посмотреть, что у меня заносится в список из файла. А там вот это: 10 13 49 50 51 51 51 53 53 54 56 57 (12 цифр)
Мне нужно к чему-то привести считываемые данные или я использую не тот метод при считывании?
package com.javarush.task.task13.task1326;
import java.io.*;
import java.util.ArrayList;
/*
2. Прочитать из файла набор чисел.
3. Вывести на консоль только четные, отсортированные по возрастанию.
6. Программа должна выводить данные на экран.
7. Программа должна вывести на экран все четные числа считанные из файла отсортированные по возрастанию.
8. Программа должна закрывать поток чтения из файла(FileInputStream).*/
public class Solution {
public static void main(String[] args) throws IOException {
ArrayList<Integer> list = new ArrayList<Integer>();
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String filename = br.readLine();
InputStream inStream = new FileInputStream(filename);
while (inStream.available() > 0) {
int data = inStream.read();
list.add(data);}
inStream.close();
for(int i = 0; i < list.size()-1; i++){
for(int j = list.size()-1; j > 0; j--){
if(list.get(j-1) > list.get(j)) {
int temp;
temp = list.get(j);
list.set(j, list.get(j-1)) ;
list.set(j-1, temp);}}
}
for(int i = 0; i < list.size(); i++){
System.out.println(list.get(i));
}
}
}