-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Expand file tree
/
Copy pathPrizeMoney.java
More file actions
37 lines (30 loc) · 854 Bytes
/
PrizeMoney.java
File metadata and controls
37 lines (30 loc) · 854 Bytes
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
package step2.domain;
import java.security.InvalidParameterException;
import java.util.Arrays;
public enum PrizeMoney {
ZERO(0, 0),
ONE(1, 0),
TWO(2, 0),
THREE(3, 5000),
FORTH(4, 50000),
FIVE(5, 1500000),
SIX(6, 2000000000);
private int matchCount;
private long prizeMoney;
PrizeMoney(int matchCount, long prizeMoney) {
this.matchCount = matchCount;
this.prizeMoney = prizeMoney;
}
public static PrizeMoney toPrizeMoney(int matchCount) {
return Arrays.stream(values())
.filter(prizeMoney -> prizeMoney.matchCount == matchCount)
.findAny()
.orElseThrow(() -> new InvalidParameterException());
}
public int matchCount() {
return matchCount;
}
public long prizeMoney() {
return prizeMoney;
}
}