З выводом все хорошо, ну условие не выполнено,возможно я не правильно понял суть задачи?
package com.javarush.task.task07.task0727;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
/*
Меняем функциональность
*/
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
ArrayList<String> strings = new ArrayList<String>();
ArrayList<String> res = new ArrayList<String>();
int count = 0;
while (true) {
String string = reader.readLine();
if (string == null || string.isEmpty()){
break;
}
for (int i=0;i<string.length();i++){
count++;
}
// System.out.println(count);
if (count % 2 ==0){
res.add(string);
res.add(string);
}
else {
//strings.add(string);
res.add(string);
res.add(string);
res.add(string); }
count = 0;
}
//ArrayList<String> resultStrings = new ArrayList<String>();
for (int i = 0; i < res.size(); i++) {
// String string = strings.get(i);
// resultStrings.add(string.toUpperCase());
System.out.println(res.get(i));
}
// for (int i = 0; i < strings.size(); i++) {
// System.out.println(strings.get(i));
//}
}
}