У меня есть текстовый файл, в котором я пытаюсь использовать разные методы, чтобы отделить определенный контент в файле и распечатать его в зависимости от того, какой метод выводится на печать.В этом случае я использую разные методы для разделения стран, в которых были люди, то есть john mexico
или william cuba
.Я сделал два разных класса (основной и супер класс).
Это супер класс
import java.util.*;
public class myHashSet{
public static HashSet <String> Mexico = new HashSet<>();
public static HashSet <String> Cuba = new HashSet<>();
public static HashSet <String> Jamaica = new HashSet<>();
//only mexico
public void Mexico(){
Mexico.removeAll(Cuba);
Mexico.removeAll(Jamaica);
Iterator <String> m = Mexico.iterator();
while(m.hasNext()){
System.out.println(m.next());
}
}
//only cuba
public void Cuba(){
Cuba.removeAll(Mexico);
Cuba.removeAll(Jamaica);
Iterator <String> m = Cuba.iterator();
while(m.hasNext()){
System.out.println(m.next());
}
}
//only jamaica
public void Jamaica(){
Jamaica.removeAll(Mexico);
Jamaica.removeAll(Cuba);
Iterator <String> m = Jamaica.iterator();
while(m.hasNext()){
System.out.println(m.next());
}
}
//person from every country
public void orCountries(){
Jamaica.addAll(Mexico);
Jamaica.addAll(Cuba);
Iterator <String> m = Jamaica.iterator();
while(m.hasNext()){
System.out.println(m.next());
}
}
//people who have been to all countries
public void allCountries(){
Jamaica.retainAll(Mexico);
Jamaica.retainAll(Cuba);
Iterator <String> m = Jamaica.iterator();
while(m.hasNext()){
System.out.println(m.next());
}
}
//only mexico and cuba
public void MexicoandCuba(){
Mexico.addAll(Cuba);
Cuba.removeAll(Jamaica);
Iterator <String> m = Mexico.iterator();
while(m.hasNext()){
System.out.println(m.next());
}
}
}
Тогда это мой основной класс, который должен использовать методы из суперкласса:
import java.io.*;
import java.util.Scanner;
public class people extends myHashSet{
public people(String string) throws FileNotFoundException {
Scanner input = new Scanner(new File("people.txt"));
read(input);
}
public void read(Scanner input){
while(input.hasNext()){
String name = input.next();
String country = input.next();
System.out.println(name + " " + country);
}
}
public static void main(String[] args) throws FileNotFoundException {
people p = new people("people.txt");
p.Mexico();
p.Cuba();
p.Jamaica();
p.orCountries();
p.allCountries();
p.MexicoandCuba();
}
}
Я знаю, что проблема в том, что методы в myHashSet
не читают файл, и это то, что я запутался в том, что делать с.Любая помощь будет принята с благодарностью!