유쨈미 2024. 3. 28. 18:28

1. 문자열(String) 처리

참조형 객체이지만 기본형처럼 사용할 수 있다.

String irum = "홍길동";						// 홍길동 객체의 주소를 irum이란 변수가 기억
System.out.println(irum + "님 만세"); 				// 홍길동님 만세

2. 상수(Final type)

변수명 = 값(리터럴, Literal) 그 자체

변수에 넣는 변하지 않는 데이터를 의미. 한번 저장된 값은 수정이 불가하다.

final int kbs = 9;
// kbs = 11;						// 수정 불가이므로 에러
System.out.println("kbs : " + kbs);			 // kbs : 9 숫자는 문자열로 바뀜
		
final double PI = 3.14;					// final 변수(=상수)는 대문자로 쓰기를 권장		
System.out.println("pi : " + PI); 			// pi : 3.14

3. 연산자의 종류

1️⃣ 산술 연산자

System.out.println(a + b);			// 8
System.out.println(a - b);			// 2
System.out.println(a * b);			// 15
System.out.println(a / b);			// 1 몫
System.out.println(a % b);			// 2 나머지
System.out.println(a / (double)b);		// 1.6666666666666667 (실수연산. 몫과 나머지)

 

2️⃣증감연산자

전위 증감연산자 ++a

후위 증감연산자 a++

int no = 1;
no = no + 1;
no += 1;
no++;						// 후위 증감연산자
++no;						// 전위 증감연산자
System.out.println("no :" + no); 	        // no : 5
int imsi = 5;						// imsi가 연산 전에 1증가
int result = ++imsi + 1;
System.out.println("imsi : " + imsi);    	 	// imsi : 6
System.out.println("result : " + result); 	  	// result : 7
		
int imsi2 = 5;
int result2 = imsi2++ + 1;				// imsi2가 연산 후에 1증가
System.out.println("imsi2 : " + imsi2);			// imsi2 : 6
System.out.println("result2 : " + result2);	 	 // result2 : 6

 

📌 주의 : 증감연산자는 다른 연산자와 함께 쓰지 않도록 권장한다.

 

3️⃣ 부호 관련 (양수, 음수)

int imsi3 = 3;
System.out.println(imsi3);
System.out.println(-imsi3);				// 음수 변환
System.out.println(imsi3 * -1);				// 음수 변환

 

4️⃣ 관계, 논리 연산자

 

연산자 우선순위
() 소괄호 > 산술(*, /, +, -) > 관계 > 논리 > 치환

int a = 5;
		
System.out.println(a > 3); 	// 관계(비교) 연산자
boolean bo = a > 3;
System.out.println(bo);		// true
		
System.out.println(a >= 3); 	// 이상
System.out.println(a <= 3); 	// 이상
System.out.println(a == 3); 	// 같다
System.out.println(a != 3); 	// 다르다
int b = 10;
System.out.println(a > 3);				// true
System.out.println(b > 3);				// true
System.out.println(a > 3 && b > 3);			// 논리 연산자 &&(and : 논리곱) = 두개의 값이 모두 참일때 true
System.out.println(a > 3 && b <= 3);			// false
		
System.out.println(a > 3 || b > 3); 			// 논리 연산자 ||(or : 논리합) = 둘중 하나라도 값이 참일때  true
System.out.println(a > 3 || b <= 3);
System.out.println(a < 3 || b <= 3);			// 두개의 값이 모두 거짓일때만 false
		
System.out.println(a < 3 || b <= 1 + 1 * 1);
boolean bb = a < 3 || b <= 1 + 1 * 1;
System.out.println(bb);

 

5️⃣ 삼항연산자

(조건)? 참 일 때값:거짓일 때값

int sbs = 8;
int mbc = (sbs > 5)?100:10 + 20 * 2;		// 조건이 참이면 ?옆의 값, 거짓일때는 콜론옆의 값을 sbs값에다 대입
System.out.println(mbc);
		
System.out.println();
int x, y, z;
x = y = z = 5;
System.out.println(x + " " + y + " " + z);	// 5 5 5

 

6️⃣ Shift 연산

int ii = 8, ij = 0;
System.out.println("ii:" + Integer.toBinaryString(ii)); // ii:1000
		
ij = ii << 1;	// << 좌측으로 1bit 이동. 남은 우측은 0으로 채움	
System.out.println("ii:" + ii + ", " + ij);				// ii:8, 0
		
ij = ii >> 1;	// >> 우측으로 1bit 이동. 남은 좌측은 부호(0:양수, 1:음수)와 같은 값으로 채움	
System.out.println("ii:" + ii + ", " + ij);				// ii:8, 0
		
ij = ii >>> 1;	// >> 우측으로 2bit 이동. 남은 좌측은 0으로 채움	
System.out.println("ii:" + ii + ", " + ij);

4. 조건문 If

int num = 1;
		
if (num >= 3) {						// 조건이 참일 때만 두 개의 실행문 수행
    System.out.println("크쿤요");			// if 조건문과 상관있음
    System.out.println("참일 때");
}
		
		
    System.out.println("출력");				// if 조건문과 상관없음
		
    num = 5;
    if(num < 3) {					// 조건에 따라 참 또는 거짓 영역 수행
	    System.out.println("작군요");
	    System.out.println("참일 때 수행");
	}else {
	System.out.println("거짓일 때 수행");
}
// 거짓일 때 수행

5. 다중 If

jumsu = 65;
if(jumsu >= 70) {
	if(jumsu >= 90) {
	System.out.println("우수");
}else {
	System.out.println("보통");
}
}else {
	System.out.println("어라 70점 미만");
	if(jumsu > 50) {
		System.out.println("50점 초과");
}else {
		System.out.println("50점 미만");
	}
}

// 50점 초과

오늘은 수업을 들은 지 이틀째이다.

첫날인 어제와는 달리 진도가 쑥쑥 나가서 따라가기 조금 벅찼다..!

그래도 강사님이 아예 처음인 사람들도 이해하기 쉽게끔 잘 설명해 주셔서 좋았다.

낯선 분야에서의 새롭게 배운 것들이 너무 많아서 하나하나 완벽히 이해하기 힘들지만,

매일 연습해 보고 되돌아보며 열심히 이해해 보도록 노력해야겠다.