13일차 강의 정리


소스

1
2
3
4
5
6
7
8
9
10
11
12
13
String st1 = "java";
String st2 = "world";
String st3 = new String("java ");
String st4 = new String("world");
 
System.out.println("java world"==st1+st2);    //'+'을 사용한 것은 새로운 객체를 만들어 내는것이다
System.out.println(st1.concat(st2));
System.out.println(st3+st4);
System.out.println(st3.concat(st4));    //'+'랑 같은 의미
System.out.println(st1==st3);
System.out.println(st1);
System.out.println(st3);
System.out.println(st1.equals(st3));    //call by value(레퍼런스)
cs

결과

소스2

1
2
3
4
5
6
7
char[] ch = {'j','a','v','a'};
String st7 = new String(ch,0,3);    //jav까지 출력
byte[] by = {65,66,67};
String st8 = new String(by);
 
System.out.println(st7);
System.out.println(st8);
cs

결과2

소스3

1
2
3
4
5
6
7
8
9
10
11
12
String d="java world";
char chr1=d.charAt(0);            //1번째 문자
 
System.out.println(chr1);
 
char chr2[] = {d.charAt(0),d.charAt(1),d.charAt(2),d.charAt(3)};    //문자열 d의 1,2,3,4번째 문자열을 배열에 저장
String st9 = new String(chr2);
 
System.out.println(st9);
System.out.println(d.codePointAt(0));    //106
System.out.println((char)106);            //j
System.out.println(d.compareTo("java worlc"));    //d와 c는 1개 차이라서 1출력된다(char 단위)
cs

결과3

소스4

1
2
3
4
5
6
7
8
9
10
11
12
char[] cha2={'a','b','c'};
String st10 = String.copyValueOf(cha2);    //char를 복사해서 문자열로 저장
 
System.out.println(st10);
System.out.println(st10.startsWith("bc"));    //"bc"로 시작하는가?(t/f)
 
byte[] by2 = st10.getBytes();
char[] ch11 = new char[cha2.length];
"java".getChars(02, ch11, 0);
for(int i=0;i<by2.length;i++){
    System.out.println((char)by2[i]);
}
cs

결과4


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

DAY14 StringBuffer  (0) 2016.07.21
DAY13 주민등록번호로 신분확인  (0) 2016.07.21
DAY13 String 1  (0) 2016.07.21
DAY13 학생 성적관리 프로그램  (0) 2016.07.21
DAY12 Lotto구매하기 결과발표(static메소드)  (0) 2016.07.21

13일차 강의 정리


String st1="java";    //선언


1. hashCode() - value 를 참조하기 위한 Key가 되는 유일한 값

소스 - System.out.println(st1.hashCode());   

결과 - 3254818

2. indexOf("a",2) - 2의 위치 부터 시작해서 a를 찾아 자리번호를 출력, 문자가 없으면 -1이 출력

소스 - System.out.println(st1.indexOf("a",2));

결과 - 3

3. isEmpty() - st1이 비어있는지 확인

소스 - System.out.println(st1.isEmpty());

결과 - false

4. matches("java") - 매치 하는지 확인

소스 - System.out.println(st1.matches("java"));

결과 - true

5. replace('a', 'b') - 재배치 a->b로 바꿔준다

소스 - System.out.println(st1.replace('a', 'b'));

결과 - jbvb

6. replaceFirst("a", "b") - 첫번째 a만 바꿔준다

소스 - System.out.println(st1.replaceFirst("a", "b"));

결과 - jbva

7. substring(2) - 자리번호 2부터 출력(0부터 시작)

소스 - System.out.println(st1.substring(2));

결과 - va

8. substring(0,3) - 자리번호 0부터 3까지 출력

소스 - System.out.println(st1.substring(0,3));

결과 - jav

9. toCharArray() - 한글자씩 가져온다

소스 -    char[] ch = st1.toCharArray();

for(int i=0;i<ch.length;i++){

System.out.println(ch[i]);

}

결과 -    j

a

v

a


String st2 = "   ab cd EFG ";


10. toLowerCase() - 모두 소문자로

11. trim() - 문자의 앞뒤 공백 제거

소스 - System.out.println(st2.toLowerCase().trim());

결과 - ab cd efg

12. toUpperCase() - 모두 대문자로

소스 - System.out.println(st2.toUpperCase()); (공백제거 없음)

결과 -    AB CD EFG 

13. valueOf(i) - i=정수, 정수를 문자열로변경

소스 - int i = 100;

String a = String.valueOf(i)+1;

System.out.println(a);

결과 - 1001

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

DAY13 주민등록번호로 신분확인  (0) 2016.07.21
DAY13 String 2  (0) 2016.07.21
DAY13 학생 성적관리 프로그램  (0) 2016.07.21
DAY12 Lotto구매하기 결과발표(static메소드)  (0) 2016.07.21
JAR로 export 하기  (0) 2016.07.19

학생의 명수와 그 명수에 해당하는 학생의 점수를 입력받아 총점과 평균을 계산하는 프로그램

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
import java.util.Scanner;
 
public class Ex01 {
    final String ver;    //상수화
    public Ex01(){        //생성자
        ver = "2.0.0";
    }
    
    public static void main(String[] args) {
        Ex01 me = new Ex01();
        me.title();
        me.proStrt();
    }//main end
 
    public void title(){        //타이틀 출력
        System.out.println("-------------------------------------------");
        System.out.println("          학생성적관리(v"+ver+")");
        System.out.println("-------------------------------------------");
    }//title end
    
    public void proStrt(){
        Scanner sc = new Scanner(System.in);
        
        System.out.print("총학생의 수 : ");
        int tot = sc.nextInt();
        String[] sub = {"학번","국어","영어","수학","총점","평균"};
        int[][] stu = new int[tot][4];
        int num=0;
        //학생 점수 입력
        for(int j=0;j<stu.length;j++){
            stu[j][0]=++num;
            System.out.println(stu[j][0]+"번 학생 정보입력");
            for(int i=1;i<stu[j].length;i++){
                System.out.print(sub[i]+">>>");
                stu[j][i]=sc.nextInt();        //학생 점수 입력
            }
        }
        //학번과 과목이름 출력
        for(int i=0;i<sub.length;i++){
            System.out.print(sub[i]);    
            System.out.print("\t");
        }
        System.out.println();
        //점수와 총점, 평균 출력
        int sum=0;
        for(int m=0;m<stu.length;m++){
            sum=0;            //총점 초기화(다음학생의 총점을 위해)
            for(int n=0;n<stu[m].length;n++){
                if(n!=0){sum += stu[m][n];}        //학번을 제외하고 점수 총합
                System.out.print(stu[m][n]);    //출력
                System.out.print("\t");
            }
            System.out.println(sum+"\t"+(100*sum/3/100.0));        //총점과 평균 출력
        }
    }//proStrt end
}//class end

cs

결과


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

DAY13 String 2  (0) 2016.07.21
DAY13 String 1  (0) 2016.07.21
DAY12 Lotto구매하기 결과발표(static메소드)  (0) 2016.07.21
JAR로 export 하기  (0) 2016.07.19
DAY12 배열 문제  (0) 2016.07.19

자동 로또번호 생성기

메인,메소드로 기능별,객체

토요일 오후 8:30 추첨

숫자적힌 공 1~45까지 

랜덤 수 5개  ex)31,22,41,8,10

"제 xx회 로또당첨번호는 8,10,22,31,41 입니다 축하드립니다."

1. 숫자 중복 불가

2. 랜덤

3. sort정렬(오름차순)

+ 보너스 번호

++ 1000원 5000원 내면 



소스

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
93
94
95
96
97
98
99
100
101
102
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Locale;
import java.util.Random;
import java.util.Scanner;
 
public class Lotto {
    static int a=326;    //회차 
    static Random r = new Random();        //random 함수 사용하는 두번째 방법
    
    public static void main(String[] args) {    
        System.out.print("로또를 구매하시겠습니까(y/n)? ");
        Scanner sc = new Scanner(System.in);
        String s = sc.nextLine();    // y/n 입력
        
        if(s.equals("y")){                //구매 yes 인 경우
            System.out.print("몇 줄 구매(1-5) : ");
            int line = sc.nextInt();    //입력
            System.out.println((line*1000)+"원 입니다.");    //계산할 가격 출력
        
            System.out.println();
            prn();        //로또 페이지 출력 함수 호출
            for(int i=0;i<line;i++){    //구매한 줄 수 만큼 buy()메소드 호출
                buy(i);    
            }
            
            System.out.println("-------------------------------------");
            event();    //당첨번호 출력 메소드 event() 호출
            
        }else if(s.equals("n")){        //구매 no 인 경우
            event();    //당첨번호 출력 메소드 event() 호출
            
        }else{
            System.out.println("잘못입력하셨습니다.");
        }
    }//main end
    
    public static void prn(){    //로또 구매시 print
        SimpleDateFormat mSimpleDateFormat = new SimpleDateFormat ( "yyyy.MM.dd HH:mm:ss", Locale.KOREA );
        Date currentTime = new Date();
        String mTime = mSimpleDateFormat.format ( currentTime );
        
        System.out.println("--------------나눔 로또--------------");
        System.out.println("               제 "+a+"회 ");    //회차는 멤버필드에 선언
        System.out.println();
        System.out.println("발행일 : "+ mTime);        //현재 시간
        System.out.println("추첨일 : "+ mTime);
        System.out.println("-------------------------------------");
    }//prn end
    public static void buy(int a){    //로또 구매 시 랜덤 번호 출력
        int[] ran = new int[5];
    
        for(int i=0;i<ran.length;i++){
            ran[i]=r.nextInt(45)+1;    //1-45까지 랜덤수를 배열에 입력
            
            for(int j=0;j<i;j++){    //중복수 있는지 확인하기 위해
                if(ran[i]==ran[j]){    //중복된 수 생성됐다면
                    i--;    //i-1을 해서 다시 랜덤수 입력할수있도록
                    break;
                }
            }
        }
        System.out.print((char)(65+a)+" 자동\t");    //"A,B,,,자동" 출력
        for(int i=0;i<ran.length;i++){
            System.out.print(ran[i]+"  ");    //수 출력
        }
        System.out.println();
    }//buy end
    public static void event(){    //당첨 확인
        int[] ran = new int[6];
        System.out.println("******************************************************************");
        System.out.print("제 "+a+"회 로또당첨번호는 ");        //회차는 멤버필드에 선언
        
        for(int i=0;i<ran.length;i++){
            ran[i]=r.nextInt(45)+1;    //1-45까지 랜덤수를 배열에 입력
            
            for(int j=0;j<i;j++){    //중복수 있는지 확인하기 위해
                if(ran[i]==ran[j]){    //중복된 수 생성됐다면
                    i--;            //i-1을 해서 다시 랜덤수 입력할수있도록
                    break;            //중간 for문 나가기
                }
            }
        }
        int temp=0;
        for(int i=0;i<ran.length-1;i++){    //오름차순으로 정렬(보너스번호를 뺀 5개만)
            for(int j=i+1;j<ran.length-1;j++){    
                if(ran[i] > ran[j]){
                    temp=ran[i];
                    ran[i]=ran[j];
                    ran[j]=temp;
                }
            }
            System.out.print(ran[i]+"  ");    //오름차순으로 출력
        }
        System.out.println("입니다. 축하드립니다.");
        System.out.println("보너스 번호는 "+ran[ran.length-1]+" 입니다.");    //마지막 보너스 랜덤수 출력
    }//event end
}//class end
 
 
 
cs

결과


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

DAY13 String 1  (0) 2016.07.21
DAY13 학생 성적관리 프로그램  (0) 2016.07.21
JAR로 export 하기  (0) 2016.07.19
DAY12 배열 문제  (0) 2016.07.19
DAY12 배열  (0) 2016.07.19

Export 하기

Java에서 Runnable JAR file 을 선택 후 Next 클릭

실행하려는 class를 Launch configuration에서 선택 후

저장할 위치를 이름을 지정해 선택

Finish

.jar 파일이 생성된 것을 확인

cmd 창을 켜서 

해당위치로 이동 후

java -jar day12(lotto).jar(.jar이름)  입력 

실행되는 것을 확인 할 수 있다






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

DAY13 학생 성적관리 프로그램  (0) 2016.07.21
DAY12 Lotto구매하기 결과발표(static메소드)  (0) 2016.07.21
DAY12 배열 문제  (0) 2016.07.19
DAY12 배열  (0) 2016.07.19
DAY11 class 정리/상수화  (0) 2016.07.18

+ Recent posts