package com.javarush.task.task19.task1925;
import java.io.*;
import java.util.ArrayList;
/*
Длинные слова
*/
public class Solution {
public static void main(String[] args)
{
try(BufferedReader bufferedReader=new BufferedReader(new FileReader(args[0]));
BufferedWriter bufferedWriter=new BufferedWriter(new FileWriter(args[1])))
{
ArrayList<String> allFrom1File=new ArrayList<>();
while(bufferedReader.ready())
{
allFrom1File.add(bufferedReader.readLine());
}
ArrayList <String> as=new ArrayList<>();
for (String all:allFrom1File)
{
String s[]=all.split(" ");
for (int i=0; i<s.length;i++)
{
if(s[i].length()>5) as.add(s[i]);
}
}
for (String elemnt:as)
{
if (as.indexOf(elemnt)==as.size()-1) bufferedWriter.write(elemnt);
else bufferedWriter.write(elemnt+",");
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
Dmitry Fokin
51 уровень
ПРограмма не проходит тест, нужно записать все слова из 1 файла длинная которых больше 6 во второй файл через запятую
Обсуждается
Комментарии (5)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
partiec
20 марта 2023, 16:51
Запятая в конце все равно будет записана. Для нее надо отдельное условие и счетчик.
Я так сделал, валентин пропустил
0
АнтонExpert
31 января 2023, 13:52
как минимум тут надо 6 сделать
0
Dmitry Fokin
31 января 2023, 14:20
спасибо конечно, но это не помогло, я эти значения как только не менял))
0
АнтонExpert
31 января 2023, 14:40
а что валидатору не нравится ?
попробуй удалить в конце условие if/else
и просто записать строки в файл через "," только не забудь удалить последнюю ","
+2
Dmitry Fokin
31 января 2023, 14:47
Блинб ты был прав, переписал последнюю часть кода вот так, прошло валидацию
String rresult="";
for (String elemnt:as)
{
rresult=rresult+elemnt+",";
}
bufferedWriter.write(rresult.substring(0, rresult.length()-1));
+1