ITWILL학원 : 5강 JAVA BY 윤미영강사
1. 기본 반복문암기
- 1~10까지 나열하기
1 2 3
| for(int i=1; i<=10; i++){ System.out.print(i); }
|
- 누적합구하기
1 2 3 4 5
| int sum = 0; for(int i=0; i<=10; i++){ sum+=i } System.out.println(sum)
|
- 카운트세기
자주 사용하는 카운트 세기 반복문
1 2 3 4 5
| int count = 0; for(int i=1; i<=10; i++){ count+=1; } System.out.println(count);
|
2. 자바에서의 String인지 체크(typeof)
자바에서는 typeof는 없고 각 데이터별로 체크할 수 있는 방법이 있다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| String [] str = new String[3]; Scanner sc = new Scanner(System.in);
for(int i=0; i<str.length; i++){ str[i] = sc.next(); }
String s = Arrays.toString(str); if( s instanceof String) { System.out.println('참'); }else{ System.out.println("거짓"); }
|
3. N개의 양수를 받아 최대값 출력
scanner로 사용자로부터 양수 n개를 받아 그 중 최대값을 화면에 출력해보자
기본적으로 양수 n개를 받는 코드를 작성하면 아래와 같다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| Scanner sc = new Scanner(System.in); System.out.println("양수 5개를 입력하세요"); int [] num = new int[5];
for(int i=0; i<num.length; i++){ num[i] = sc.nextInt(); }
for(int i=0; i<num.length; i++){ if( num[i] > 0){ System.out.print(num[i]+ " "); }else{ System.out.print("양수아님 "); } }System.out.println();
|
이제 두가지 방법으로 최대값을 구해보자
- 첫번째 방법 : 삼항연산자 사용
1 2 3 4 5 6 7
| int max = num[0];
for( int i = 1; i < num.length; i++) { max = num[i] > max ? num[i] : max; }
System.out.println("최대값은 : "+ max);
|
- 두번재 방법 : if문 사용
1 2 3 4 5 6 7 8 9 10
| int max = num[0];
for(int i=1; i<num.length; i++){ if(max > num[i]){ max = max; }else{ max = num[i]; } } System.out.println("최대값은 : "+ max);
|
위의 코드를 자세히보자. 리팩토링할 부분이 보인다.
max가 가장 큰 수 인 경우 굳이 동일값(max = max;)을 대입할 필요가 없다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| int max = num[0];
for(int i=1; i<num.length; i++){ if(max < num[i]){ max = num[i]; } } System.out.println("최대값은 : "+ max);
for(int i=1; i<num.length; i++){ if(max < num[i]) max = num[i]; } System.out.println("최대값은 : "+ max);
|
중괄호를 생략하니 세상 간단간단해보인다
4. char와 String의 차이점 산술연산자
char는 연결연산자가 사용이 안된다.
String이 어느 한 변수 이상에 있는 경우에는 연결연산자가 사용이 된다.
캐릭터에서 연결연산자를 사용하고싶으면 변수들 사이에 “”를 입력해줘야한다.
1 2 3 4 5 6
| char c1= 'a', c2= 'b'; System.out.println(a + b);
String c1= 'a', c2= 'b'; System.out.println(a + b);
|
만약 char를 ab로 나타내고 싶다면 변수들 사이에 “”해주면 된다
1 2
| char c1= 'a', c2= 'b'; System.out.println(a +""+ b);
|