idzik

Java-BootCamp-Enums-Guitar

Nov 16th, 2016
381
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.37 KB | None | 0 0
  1. /*
  2. ZADANIE
  3. Stwórz swój własny enum, który będzie przechowywał typy gitar na świecie.
  4. Następnie dopisz (lub wymyśl), dwa stałe parametry do tych gitar.
  5. Proponuję : ilość strun, średnica bębna.
  6.  
  7. Napisz klasę, która będzie przechowywać typ gitary, cenę, nazwę i producenta.
  8. Stwórz w niej gettery, settery i konstruktor.
  9. Stwórz listę losowych gitar, a następnie stwórz metodę do sortowania ich względem średnicy bębna.
  10.  
  11. Program główny powinien poprosić użytkownika o wpisanie średnicy do konsoli
  12. a następnie dopasować do niej gitarę i wypisać dane na jej temat.
  13. */
  14.  
  15. public class Guitar implements Comparable<Guitar>{
  16. private GuitarEnum type;
  17. private int price;
  18. private String name;
  19. private String manufacturer;
  20.  
  21. public Guitar(GuitarEnum type, int price, String name, String manufacturer) {
  22.     super();
  23.     setType(type);
  24.     setPrice(price);
  25.     setName(name);
  26.     setManufacturer(manufacturer);
  27. }
  28. public int getDiameter(){
  29.     return type.getDiameterofDrum();
  30. }
  31.  
  32. @Override
  33. public String toString() {
  34.     return "Guitar [type=" + type + ", diameter="+this.getType().getDiameterofDrum()+", price=" + price + ", name=" + name + ", manufacturer=" + manufacturer + "]";
  35. }
  36.  
  37. public GuitarEnum getType() {
  38.     return type;
  39. }
  40. public void setType(GuitarEnum type) {
  41.     this.type = type;
  42. }
  43. public int getPrice() {
  44.     return price;
  45. }
  46. public void setPrice(int price) {
  47.     if (price<0)
  48.     this.price = price;
  49.     else this.price=0;
  50. }
  51. public String getName() {
  52.     return name;
  53. }
  54. public void setName(String name) {
  55.     this.name = name;
  56. }
  57. public String getManufacturer() {
  58.     return manufacturer;
  59. }
  60. public void setManufacturer(String manufacturer) {
  61.     this.manufacturer = manufacturer;
  62. }
  63. @Override
  64. public int compareTo(Guitar g) {
  65.     if (this.getDiameter()<g.getDiameter()) return -1;
  66.     else if (this.getDiameter()>g.getDiameter()) return 1;
  67.     return 0;
  68. }
  69.  
  70. }
  71.  
  72.  
  73.  
  74.  
  75. import java.util.ArrayList;
  76. import java.util.Collections;
  77. import java.util.Iterator;
  78. import java.util.List;
  79. import java.util.Scanner;
  80.  
  81. public class GuitarEnumTest {
  82.  
  83.     public static void main(String[] args) {
  84.         Guitar g1=new Guitar(GuitarEnum.ACOUSTIC,200,"gitara 1","firma 1");
  85.         Guitar g2=new Guitar(GuitarEnum.BASS,200,"gitara 2","firma 1");
  86.         Guitar g3=new Guitar(GuitarEnum.ELECTRIC,200,"gitara 2","firma 3");
  87.         List <Guitar>lista= new ArrayList<Guitar>();
  88.         lista.add(g1);
  89.         lista.add(g2);
  90.         lista.add(g3);
  91.         System.out.println(lista);
  92.         Collections.sort(lista);
  93.         System.out.println("\n");
  94.         System.out.println(lista);
  95.         Scanner skan=new Scanner(System.in);
  96.         System.out.println("Podaj średnicę");
  97.         int diameter=skan.nextInt();
  98.         for (Guitar guitar : lista) {
  99.             if (guitar.getDiameter()==diameter)
  100.                 System.out.println(guitar);
  101.         }
  102.     }
  103.  
  104. }
  105.  
  106.  
  107.  
  108.  
  109. public enum GuitarEnum {
  110.     BASS(1,3),ELECTRIC(2,5),ACOUSTIC(3,6);
  111.    
  112.     private int numberOfStrings;
  113.     private int diameterofDrum;
  114.    
  115.     private GuitarEnum(int numberOfStrings, int diameterofDrum) {
  116.         this.numberOfStrings = numberOfStrings;
  117.         this.diameterofDrum = diameterofDrum;
  118.     }
  119.  
  120.     public int getNumberOfStrings() {
  121.         return numberOfStrings;
  122.     }
  123.  
  124.     public void setNumberOfStrings(int numberOfStrings) {
  125.         this.numberOfStrings = numberOfStrings;
  126.     }
  127.  
  128.     public int getDiameterofDrum() {
  129.         return diameterofDrum;
  130.     }
  131.  
  132.     public void setDiameterofDrum(int diameterofDrum) {
  133.         this.diameterofDrum = diameterofDrum;
  134.     }
  135.  
  136.    
  137.    
  138.    
  139.    
  140.    
  141. }
Advertisement
Add Comment
Please, Sign In to add comment