выдает вопросы во всех пунктах
дома работает нормально
package com.javarush.task.task22.task2209;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.StringTokenizer;
/*
Составить цепочку слов
*/
import java.io.*;
import java.util.*;
public class Solution {
public static void main(String[] args) throws IOException {
String fileName = "C:\\someFile0.txt";
List<String> wordsList = new ArrayList();
try (BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));) {
fileName = bf.readLine();
}
try (Scanner in = new Scanner(new FileInputStream(fileName))) {
while (in.hasNext()) wordsList.add(in.next());
}
System.out.println(getLine(wordsList.toArray(new String[0])));
}
public static StringBuilder getLine(String... words) {
List<String> wordsList = new ArrayList<>();
Arrays.stream(words).forEach(wordsList::add);
List<String> resultList = new ArrayList<>();
resultList.add(wordsList.remove(0));
while (!wordsList.isEmpty()) {
String currentWord = wordsList.remove(0);
String curtWordFirsChar = currentWord.substring(0, 1).toLowerCase();
String curWordLastChar = currentWord.substring(currentWord.length() - 1).toLowerCase();
String firstListWord = resultList.get(0);
String lastListWord = resultList.get(resultList.size() - 1);
String firstListChar = firstListWord.substring(0, 1).toLowerCase();
String lastListChar = lastListWord.substring(lastListWord.length() - 1).toLowerCase();
if (curWordLastChar.equals(firstListChar)) {
resultList.add(0, currentWord);
continue;
}
if (curtWordFirsChar.equals(lastListChar)) {
resultList.add(currentWord);
continue;
}
wordsList.add(currentWord);
}
StringBuilder sb = new StringBuilder();
sb.append(String.join(" ", resultList));
return sb;
}
}