Advertisement
Guest User

Untitled

a guest
Dec 6th, 2017
431
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 6.30 KB | None | 0 0
  1. // Felix Vejdegren || Jack Hällström || Douglas Hammarstam
  2.  
  3. import java.util.Scanner;
  4. import java.util.ArrayList;
  5.  
  6. public class HundRegister {
  7.  
  8.     private Scanner scan = new Scanner(System.in);
  9.     private ArrayList<Dog> dogArr = new ArrayList<>();
  10.  
  11.  
  12.     private void run(){
  13.         boolean running;
  14.         do {
  15.             String command = readCommand();
  16.             running = handleCommand(command);
  17.         }while (running);
  18.     }
  19.  
  20.     private String readCommand(){
  21.  
  22.         System.out.println("Vad vill du göra? \n" + "1. Registrera en ny hund\n2. Öka ålder på en hund redan i systemet \n3. Skriv ut en lista på befintliga hundar i systemet\n4. Ta bort en hund ur systemet\n5. Avsluta programmet");
  23.         System.out.print("Skriv ditt val här: ");
  24.         return scan.nextLine().toLowerCase();
  25.     }
  26.  
  27.     private boolean handleCommand(String command){
  28.  
  29.         switch (command) {
  30.             case "1":
  31.             case "register new dog":
  32.                 registerDog();
  33.                 break;
  34.             case "2":
  35.             case "increase age":
  36.                 increaseAge();
  37.                 break;
  38.             case "3":
  39.             case "list dogs":
  40.                 listDog();
  41.                 break;
  42.             case "4":
  43.             case "remove dog":
  44.                 deleteDog();
  45.                 break;
  46.             case "5":
  47.             case "exit":
  48.                 System.out.println("Programmet avslutas, hej då!");
  49.                 return false;
  50.             default:
  51.                 System.out.println("error Felaktigt kommando, vänligen välj igen");
  52.                 break;
  53.             }
  54.         return true;
  55.     }
  56.  
  57.     private void registerDog(){
  58.  
  59.         System.out.print("Vänligen ange namn på hunden: ");
  60.         String name = scan.nextLine().toLowerCase();
  61.         while (name.trim().isEmpty()){
  62.             System.out.print("Inget namn angivet, vänligen försök igen: ");
  63.             name = scan.nextLine().toLowerCase();
  64.         }
  65.  
  66.         System.out.print("Ange vad " + name.substring(0,1).toUpperCase() + name.substring(1).toLowerCase()+ " är för ras: ");
  67.         String race = scan.nextLine().toLowerCase();
  68.  
  69.         System.out.print("Hur gammal är " + name.substring(0,1).toUpperCase() + name.substring(1).toLowerCase() + " angett i år: ");
  70.         double age = scan.nextDouble();
  71.         scan.nextLine(); // ta bort radbryt
  72.  
  73.         System.out.print("Och slutligen, hur mycket väger " + name.substring(0,1).toUpperCase() + name.substring(1).toLowerCase() + " angett i kg: ");
  74.         double weight = scan.nextDouble();
  75.         scan.nextLine(); // ta bort radbryt
  76.  
  77.         dogArr.add(new Dog(name, race, age, weight));
  78.  
  79.         System.out.println(dogArr.get(dogArr.size()-1) + " skapad");
  80.  
  81.     }
  82.  
  83.     private void increaseAge() {
  84.  
  85.         System.out.print("Vad heter hunden som ska åldras: ");
  86.         String increaseAgeDog = scan.nextLine().toLowerCase();
  87.         boolean increaseAgeDogExist = false;
  88.  
  89.         for (Dog d : dogArr)
  90.             if (increaseAgeDog.equals(d.getName())){
  91.                 increaseAgeDogExist = true;
  92.                 d.increaseAge();
  93.  
  94.             }if (increaseAgeDogExist){
  95.                 System.out.println("Hunden med namn " + increaseAgeDog.substring(0,1).toUpperCase() + increaseAgeDog.substring(1).toLowerCase() + " har fått sin ålder ökat med 1 år");
  96.             }else{
  97.                 System.out.println("error Det finns ingen hund med namn " + increaseAgeDog.substring(0,1).toUpperCase() + increaseAgeDog.substring(1).toLowerCase() + " i systemet");
  98.         }
  99.     }
  100.  
  101.     private void listDog(){
  102.         System.out.print("Vad är den minsta svanslängden som du vill ha en lista på: ");
  103.         double dogsToBeListed = scan.nextDouble();
  104.         scan.nextLine(); // Ta bort radbryt
  105.         boolean listDogExist = false;
  106.  
  107.         for (Dog d :  dogArr)
  108.             if (dogsToBeListed <= d.tail()) {
  109.                 listDogExist = true;
  110.             }
  111.  
  112.             if(listDogExist) {
  113.                 for (Dog d : dogArr)
  114.                     if (dogsToBeListed <= d.tail())
  115.                         System.out.println(d);
  116.             }else{
  117.             System.out.println("Inga hundar med den svanslängden hittades");
  118.        }
  119.     }
  120.  
  121.     private void deleteDog() {
  122.         System.out.print("Vad heter hunden som ska tas bort ur registret: ");
  123.         String dogToBeDeleted = scan.nextLine().toLowerCase();
  124.         boolean deleteDogExist = false;
  125.  
  126.         for (Dog d : dogArr) {
  127.             if (dogToBeDeleted.equals(d.getName())) {
  128.                 dogArr.remove(d);
  129.                 deleteDogExist = true;
  130.                 break;
  131.             }
  132.         }
  133.             if (deleteDogExist) {
  134.                 System.out.println("Hunden med namnet " + dogToBeDeleted.substring(0,1).toUpperCase() + dogToBeDeleted.substring(1).toLowerCase() + " har tagits bort ur registret");
  135.  
  136.             } else {
  137.                 System.out.println("error Hunden " + dogToBeDeleted.substring(0,1).toUpperCase() + dogToBeDeleted.substring(1).toLowerCase() + " finns inte i systemet");
  138.             }
  139.  
  140.     }
  141.  
  142.  
  143.  
  144.  
  145.  
  146.  
  147.     public static void main (String [] args){
  148.         new HundRegister().run();
  149.     }
  150.  
  151. }
  152.  
  153.  
  154.  
  155. DOG KLASS
  156.  
  157. // Felix Vejdegren || Jack Hällström || Douglas Hammarstam
  158.  
  159. public class Dog {
  160.  
  161.     private String name;
  162.     private String race;
  163.     private double age;
  164.     private double weight;
  165.  
  166.  
  167.     public Dog(String name, String race, double age, double weight){
  168.         this.name = name;
  169.         this.race = race;
  170.         this.age = age;
  171.         this.weight = weight;
  172.  
  173.     }
  174.  
  175.     public String getName() {
  176.         return name;
  177.     }
  178.  
  179.     public void increaseAge(){
  180.         age += 1;
  181.     }
  182.  
  183.     public double tail(){
  184.  
  185.         switch (race){
  186.             case "tax":
  187.                 return 3.7;
  188.             case "dachshund":
  189.                 return 3.7;
  190.             default:
  191.                 return (age*weight) / 10;
  192.         }
  193.     }
  194.  
  195.     public String toString(){
  196.         return (name.substring(0,1).toUpperCase() + name.substring(1).toLowerCase() + " " + race + " " + age + " år " + weight + " kg" + " svans = " + tail());
  197.     }
  198.  
  199. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement