Lotto를 객체지향적으로 작성하기


Lotto 소스

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
public class Lotto {
    //객체 지향적 소스
    public static void main(String[] args) {
 
        Ball[] box = new Ball[45];
        String[] colorName={"검정","파랑","노랑","빨강","초록"};
        
        for(int i=0;i<45;i++){    // 공 객체 만들어 박스에 담기
            box[i]= new Ball(i+1,colorName[i/10]);    //Ball 생성자
        }
 
        int cnt=0;
        while(cnt<5){
            int idx = (int)(Math.random()*45);    //0~44
            if(box[idx].mark){        //중복을 피하기위한 조건문
                box[idx].show();    //출력
                box[idx].setMark();    //한번출력됬으니 체크
                cnt++;
            }
        }//while end 
    }//main end
}//class end
cs

Ball 소스

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public class Ball {
    public int num;            //숫자
    public String color;    //공의 색
    public boolean mark;    //중복여부 확인
    
    public Ball(int num,String color){        //생성자
        this.num=num;
        this.color=color;
        mark = true;
        System.out.println("공하나를 번호("+num+")를 부여하고");
        System.out.println(color+"색 을 칠하여 박스에 넣는다");
    }
    
    public void show(){        //출력
        System.out.println(num+" : "+color);
    }
    public void setMark(){    //중복되지않도록 체크
        mark= !(mark);
    }
}//class end
cs


결과

......생략


'* Programming > JAVA' 카테고리의 다른 글

DAY15 Wrapper class  (0) 2016.07.25
DAY15 String " "기준으로 불러오기  (0) 2016.07.25
DAY14 StringBuffer  (0) 2016.07.21
DAY13 주민등록번호로 신분확인  (0) 2016.07.21
DAY13 String 2  (0) 2016.07.21

+ Recent posts