Advertisement
Guest User

Untitled

a guest
Jun 22nd, 2016
267
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.50 KB | None | 0 0
  1. package CatLady;
  2.  
  3. import java.util.HashMap;
  4. import java.util.Scanner;
  5.  
  6. /**
  7. * Created by iwano on 6/22/2016.
  8. */
  9. public class CatLady {
  10. public static void main(String[] args) {
  11. HashMap<String, Cat> cats = new HashMap<>();
  12. Scanner scan = new Scanner(System.in);
  13. String input = scan.nextLine();
  14. while (!input.equals("End")) {
  15. String[] data = input.split("\\s+");
  16. String type = data[0];
  17. String name = data[1];
  18. long m = Long.parseLong(data[2]);
  19.  
  20. switch (type) {
  21. case "Siamese":
  22. Siamese s = new Siamese(name, m);
  23. cats.put(name, s);
  24. break;
  25. case "Cymric":
  26. Cymric c = new Cymric(name, m);
  27. cats.put(name, c);
  28. break;
  29. case "StreetExtraordinaire":
  30. StreetExtraordinaire st = new StreetExtraordinaire(name, m);
  31. cats.put(name, st);
  32. break;
  33. }
  34. input = scan.nextLine();
  35. }
  36. String name = scan.nextLine();
  37. System.out.println(cats.get(name).toString());
  38. }
  39. }
  40.  
  41. class Cat {
  42. private String name;
  43.  
  44. public Cat(String name) {
  45. this.name = name;
  46. }
  47.  
  48. @Override
  49. public String toString() {
  50. return String.format("%s", this.name);
  51. }
  52. }
  53.  
  54. class Siamese extends Cat {
  55. private final String type = "Siamese";
  56. private long earSize;
  57.  
  58. public Siamese(String name, long earSize) {
  59. super(name);
  60. this.earSize = earSize;
  61. }
  62.  
  63. @Override
  64. public String toString() {
  65. return this.type + " " + super.toString() + " " + this.earSize;
  66. }
  67. }
  68.  
  69. class Cymric extends Cat {
  70. private final String type = "Cymric";
  71. private long furLenght;
  72.  
  73. public Cymric(String name, long furLenght) {
  74. super(name);
  75. this.furLenght = furLenght;
  76. }
  77.  
  78. @Override
  79. public String toString() {
  80. return this.type + " " + super.toString() + " " + this.furLenght;
  81. }
  82. }
  83.  
  84. class StreetExtraordinaire extends Cat {
  85. private final String type = "StreetExtraordinaire";
  86. private long decibels;
  87.  
  88. public StreetExtraordinaire(String name, long decibels) {
  89. super(name);
  90. this.decibels = decibels;
  91. }
  92.  
  93. @Override
  94. public String toString() {
  95. return this.type + " " + super.toString() + " " + this.decibels;
  96. }
  97. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement