fork download
  1. import java.util.*;
  2. class Ideone {
  3. static class Person {
  4. private final String name;
  5. private final String age;
  6. private final String gender;
  7.  
  8. Person(String name, String age, String gender) {
  9. this.name = name;
  10. this.age = age;
  11. this.gender = gender;
  12. }
  13.  
  14. public String toString() {
  15. return "Person{" +
  16. "name='" + name + '\'' +
  17. ", age='" + age + '\'' +
  18. ", gender='" + gender + '\'' +
  19. '}';
  20. }
  21. }
  22. public static void main (String[] args) {
  23. String input ="John Doe 18 male\nAmy hun 19 female\n";
  24. Scanner reader = new Scanner(input).useDelimiter("(?<=\\d)\\s+|\\s+(?=\\d)|\n");
  25. Person[] result = new Person[10];
  26. int i = 0;
  27. while (reader.hasNext()) {
  28. result[i++] = new Person(reader.next(), reader.next(), reader.next());
  29. }
  30. Arrays.stream(result).filter(Objects::nonNull).forEach(System.out::println);
  31. }
  32. }
Success #stdin #stdout 0.2s 58060KB
stdin
Standard input is empty
stdout
Person{name='John Doe', age='18', gender='male'}
Person{name='Amy hun', age='19', gender='female'}