import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.lang.reflect.Array;
import java.util.ArrayList;
/**
Необходимо реализовать консольную программу, которая бы фильтровала поток текстовой информации
подаваемой на вход и на выходе показывала лишь те строчки, которые содержат слово передаваемое
программе на вход в качестве аргумента.
*/
class Grep {
public static ArrayList
<String
> arrays
() throws IOException { ArrayList<String> array = new ArrayList<String>();
while (true) {
if (s.equals("")) { //пустая строка-конец цикла
break;
}
else array.add(s.toLowerCase());
}
return array;
}
public static ArrayList
<String
> method
(String s, ArrayList
<String
> arry
) { ArrayList<String> array = new ArrayList<String>();
for (int i = 0; i < arry.size(); i++) {
int k=0;
k = arry.get(i).indexOf(s); //проверям строки на наличие аргумента
if (k>=0) {
array.add(arry.get(i));
}
}
return array;
}
public static void method1(ArrayList<String> array){
for (int i=0; i<array.size(); i++){
System.
out.
println(array.
get(i
)); }
}
method1(method("двач", arrays()));
}
}
aW1wb3J0IGphdmEuaW8uQnVmZmVyZWRSZWFkZXI7CmltcG9ydCBqYXZhLmlvLklPRXhjZXB0aW9uOwppbXBvcnQgamF2YS5pby5JbnB1dFN0cmVhbVJlYWRlcjsKaW1wb3J0IGphdmEubGFuZy5yZWZsZWN0LkFycmF5OwppbXBvcnQgamF2YS51dGlsLkFycmF5TGlzdDsKCi8qKgog0J3QtdC+0LHRhdC+0LTQuNC80L4g0YDQtdCw0LvQuNC30L7QstCw0YLRjCDQutC+0L3RgdC+0LvRjNC90YPRjiDQv9GA0L7Qs9GA0LDQvNC80YMsINC60L7RgtC+0YDQsNGPINCx0Ysg0YTQuNC70YzRgtGA0L7QstCw0LvQsCDQv9C+0YLQvtC6INGC0LXQutGB0YLQvtCy0L7QuSDQuNC90YTQvtGA0LzQsNGG0LjQuAog0L/QvtC00LDQstCw0LXQvNC+0Lkg0L3QsCDQstGF0L7QtCDQuCDQvdCwINCy0YvRhdC+0LTQtSDQv9C+0LrQsNC30YvQstCw0LvQsCDQu9C40YjRjCDRgtC1INGB0YLRgNC+0YfQutC4LCDQutC+0YLQvtGA0YvQtSDRgdC+0LTQtdGA0LbQsNGCINGB0LvQvtCy0L4g0L/QtdGA0LXQtNCw0LLQsNC10LzQvtC1CiDQv9GA0L7Qs9GA0LDQvNC80LUg0L3QsCDQstGF0L7QtCDQsiDQutCw0YfQtdGB0YLQstC1INCw0YDQs9GD0LzQtdC90YLQsC4KICovCiBjbGFzcyBHcmVwIHsKCiAgICBwdWJsaWMgc3RhdGljIEFycmF5TGlzdDxTdHJpbmc+IGFycmF5cygpIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAgICAgICAgQnVmZmVyZWRSZWFkZXIgcmVhZGVyID0gbmV3IEJ1ZmZlcmVkUmVhZGVyKG5ldyBJbnB1dFN0cmVhbVJlYWRlcihTeXN0ZW0uaW4pKTsKICAgICAgICBBcnJheUxpc3Q8U3RyaW5nPiBhcnJheSA9IG5ldyBBcnJheUxpc3Q8U3RyaW5nPigpOwogICAgICAgICAgICB3aGlsZSAodHJ1ZSkgewogICAgICAgICAgICAgICAgU3RyaW5nIHMgPSByZWFkZXIucmVhZExpbmUoKTsKICAgICAgICAgICAgICAgIGlmIChzLmVxdWFscygiIikpIHsgLy/Qv9GD0YHRgtCw0Y8g0YHRgtGA0L7QutCwLdC60L7QvdC10YYg0YbQuNC60LvQsAogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICBlbHNlIGFycmF5LmFkZChzLnRvTG93ZXJDYXNlKCkpOwogICAgICAgICAgICB9CgogICAgICAgIHJldHVybiBhcnJheTsKICAgIH0KCiAgICBwdWJsaWMgc3RhdGljIEFycmF5TGlzdDxTdHJpbmc+IG1ldGhvZChTdHJpbmcgcywgQXJyYXlMaXN0PFN0cmluZz4gYXJyeSkgewogICAgICAgIEFycmF5TGlzdDxTdHJpbmc+IGFycmF5ID0gbmV3IEFycmF5TGlzdDxTdHJpbmc+KCk7CiAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBhcnJ5LnNpemUoKTsgaSsrKSB7CiAgICAgICAgICAgIGludCBrPTA7CiAgICAgICAgICAgIGsgPSBhcnJ5LmdldChpKS5pbmRleE9mKHMpOyAvL9C/0YDQvtCy0LXRgNGP0Lwg0YHRgtGA0L7QutC4INC90LAg0L3QsNC70LjRh9C40LUg0LDRgNCz0YPQvNC10L3RgtCwCiAgICAgICAgICAgIGlmIChrPj0wKSB7CiAgICAgICAgICAgICAgICBhcnJheS5hZGQoYXJyeS5nZXQoaSkpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBhcnJheTsKICAgIH0KICAgICAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWV0aG9kMShBcnJheUxpc3Q8U3RyaW5nPiBhcnJheSl7CiAgICAgICAgZm9yIChpbnQgaT0wOyBpPGFycmF5LnNpemUoKTsgaSsrKXsKICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGFycmF5LmdldChpKSk7CiAgICAgICAgfQogICAgfQoKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBJT0V4Y2VwdGlvbiB7CiAgICAgICAgbWV0aG9kMShtZXRob2QoItC00LLQsNGHIiwgYXJyYXlzKCkpKTsKCiAgICB9Cn0K