Advertisement
Guest User

Exemplo

a guest
Nov 9th, 2016
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.60 KB | None | 0 0
  1. // Classe Suco
  2. package exemplo;
  3.  
  4. import java.util.Objects;
  5.  
  6. public class Suco {
  7.  
  8.  private String nome;
  9.  
  10.  public Suco() {
  11.  }
  12.  
  13.  public Suco(String nome) {
  14.   this.nome = nome;
  15.  }
  16.  
  17.  public String getNome() {
  18.   return nome;
  19.  }
  20.  
  21.  public void setNome(String nome) {
  22.   this.nome = nome;
  23.  }
  24.  
  25.  @Override
  26.  public int hashCode() {
  27.   int hash = 7;
  28.   hash = 43 * hash + Objects.hashCode(this.nome);
  29.   return hash;
  30.  }
  31.  
  32.  @Override
  33.  public boolean equals(Object obj) {
  34.   if (this == obj) {
  35.    return true;
  36.   }
  37.   if (obj == null) {
  38.    return false;
  39.   }
  40.   if (getClass() != obj.getClass()) {
  41.    return false;
  42.   }
  43.   final Suco other = (Suco) obj;
  44.   return Objects.equals(this.nome, other.nome);
  45.  }
  46. }
  47.  
  48. // Classe Mix
  49. package exemplo;
  50.  
  51. import java.util.Objects;
  52.  
  53. public class Mix {
  54.  
  55.  private Suco suco1;
  56.  private Suco suco2;
  57.  
  58.  public Mix() {
  59.  }
  60.  
  61.  public Mix(Suco suco1, Suco suco2) {
  62.   this.suco1 = suco1;
  63.   this.suco2 = suco2;
  64.  }
  65.  
  66.  public Suco getSuco1() {
  67.   return suco1;
  68.  }
  69.  
  70.  public void setSuco1(Suco suco1) {
  71.   this.suco1 = suco1;
  72.  }
  73.  
  74.  public Suco getSuco2() {
  75.   return suco2;
  76.  }
  77.  
  78.  public void setSuco2(Suco suco2) {
  79.   this.suco2 = suco2;
  80.  }
  81.  
  82.  @Override
  83.  public int hashCode() {
  84.  
  85.   int hash = 7;
  86.   hash = 59 * hash + Objects.hashCode(this.suco1);
  87.   hash = 59 * hash + Objects.hashCode(this.suco2);
  88.   return hash;
  89.  }
  90.  
  91.  @Override
  92.  public boolean equals(Object obj) {
  93.   if (this == obj) {
  94.    return true;
  95.   }
  96.   if (obj == null) {
  97.    return false;
  98.   }
  99.   if (getClass() != obj.getClass()) {
  100.    return false;
  101.   }
  102.   final Mix mix = (Mix) obj;
  103.  
  104. //Compara as ordens
  105.   if (this.suco1.equals(mix.suco2) && this.suco2.equals(mix.suco1)) {
  106.    return true;
  107.   }
  108.  
  109.   if (!Objects.equals(this.suco1, mix.suco1)) {
  110.    return false;
  111.   }
  112.   return Objects.equals(this.suco2, mix.suco2);
  113.  }
  114.  
  115. }
  116.  
  117. // Classe de Teste
  118. package exemplo;
  119.  
  120. public class Exemplo {
  121.  
  122.  public static void main(String[] args) {
  123.   Suco suco1 = new Suco("Laranja");
  124.   Suco suco2 = new Suco("Açai");
  125.  
  126. // Laranja/Açai
  127.   Mix mix1 = new Mix();
  128.   mix1.setSuco1(suco1);
  129.   mix1.setSuco2(suco2);
  130.  
  131.   // Açai/Laranja
  132.   Mix mix2 = new Mix();
  133.   mix2.setSuco1(suco2);
  134.   mix2.setSuco2(suco1);
  135.  
  136.   Mix mix3 = new Mix();
  137.   mix3.setSuco1(suco1);
  138.   mix3.setSuco2(suco2);
  139.  
  140.   // Deve ser iguais
  141.   System.out.println(mix1.hashCode());
  142.   System.out.println(mix2.hashCode());
  143.  
  144. //  System.out.println(suco1.hashCode());
  145. //  System.out.println(suco2.hashCode());
  146.   // Deve imprimir Igual
  147.   if (mix2.equals(mix1)) {
  148.    System.out.println("Igual");
  149.   } else {
  150.    System.out.println("Diferente");
  151.   }
  152.  
  153.  }
  154. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement