-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathParCliQuant.java
94 lines (88 loc) · 1.88 KB
/
ParCliQuant.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
import java.io.Serializable;
import java.util.Arrays;
public class ParCliQuant implements Serializable, Comparable<ParCliQuant>
{
/**
* Variáveis de instância
*/
private String cliente;
private int quantidade;
/**
* Construtor por parametrizado
* @param p
*/
public ParCliQuant(String p,int qt){
cliente = p;
quantidade = qt;
}
/**
* Construtor por cópia
* @param pq
*/
public ParCliQuant(ParCliQuant pq){
cliente = pq.getCliente();
quantidade = pq.getQuantidade();
}
/**
* Obter cliente
* @return
*/
public String getCliente(){
return cliente;
}
/**
* Obter quantidade
* @return
*/
public int getQuantidade(){
return quantidade;
}
/**
* Adicionar quantidade
* @param q
*/
public void add(int q){
quantidade += q;
}
/**
* Clone
* @return
*/
public ParCliQuant clone(){
return new ParCliQuant(this);
}
/**
* toString
* @return
*/
public String toString(){
return cliente;
}
/**
* Equals
* @param o
* @return
*/
public boolean equals(Object o){
if(o == this) return true;
if(o == null || o.getClass() != this.getClass()) return false;
ParCliQuant pq = (ParCliQuant) o;
return cliente.equals(pq.getCliente()) && quantidade == pq.getQuantidade();
}
/**
* CompareTo
* @param pq
* @return
*/
public int compareTo(ParCliQuant pq){
if(quantidade > pq.getQuantidade()) return -1;
if(quantidade < pq.getQuantidade()) return 1;
else return cliente.compareTo(getCliente());
}
/**
* hashCode
*/
public int hashCode(){
return Arrays.hashCode(new Object[]{quantidade,cliente});
}
}