야구게임에서 선수 번호(memberNumber)를 측정하기 위해
타자는 2000번대
투수는 1000번대로 지정.
싱글톤 : 제일 마지막번호를 구해서 +1씩 해주는 경우
public class InsertClass implements DaoImpl {
Scanner scan = new Scanner(System.in);
private int memberNumber;
public InsertClass() {
SingletonCls sc = SingletonCls.getInstance();
memberNumber = sc.list.get( sc.list.size() - 1 ).getNumber();
if(memberNumber >= 2000) {
memberNumber = memberNumber - 1000;
}
memberNumber = memberNumber + 1;
}
리스트 : 리스트 전체값을 보고 제일 큰 번호를 구해(타자는 -1000해서) +1씩 해주는 방법
((numArr[0])는 선수번호 값)
public class MemberDao {
Scanner sc = new Scanner(System.in);
private Map<Integer, Human> map = new HashMap<Integer, Human>();
private int memberNumber;
public MemberDao() {
int numArr[] = new int[map.size()];
int w = 0;
TreeMap<Integer, Human> tmap = new TreeMap<Integer, Human>(map);
Iterator<Integer> it = tmap.keySet().iterator();
while(it.hasNext()) {
Human h = tmap.get(it.next());
numArr[w] = h.getNumber();
w++;
}
int max = numArr[0];
for (int i = 0; i < numArr.length; i++) {
if (numArr[i] >= 2000) {
numArr[i] = numArr[i] -1000;
}
if (max < numArr[i]) {
max = numArr[i];
}
}
memberNumber = max + 1;
}
}
'JAVA > 쓸만한 코드' 카테고리의 다른 글
뷰클래스 셋팅 코드 (0) | 2020.06.12 |
---|---|
싱글톤//야구 멤버 (0) | 2020.06.10 |
Singleton//싱글톤//기본 코드 (0) | 2020.06.10 |
stack//스택// 원리 코드 (0) | 2020.06.10 |
Map//Baseball 야구멤버 (0) | 2020.06.09 |