Day03 :) 연산자2, 조건문 if

연산자 2

대입연산자

  • 대입: 변수의 값을 새로운 값으로 변경하는 것.
  • 대입연산자: 오른쪽의 값을 왼쪽에 대입하여 값을 산출해냄.
int a = 10;
 a += 10 (a = a+10) -> a = 20
 a -= 10 (a = a-10) -> a = 0
 a *= 3  (a = a*3) -> a = 30
 a /= 3  (a = a/3) -> a = 3
 a %= 3  (a = a%3) -> a = 1

증감연산자

  • 증감연산자는 위치에 따라 값이 달라짐.
    • ++x: x의 값을 1 증가시킨 후 연산 수행.
    • y++: 연산 수행 후 y의 값을 1 증가시킴.
int x = 10;
int y = 10;
				
int value1 = ++x;
int value2 = y++;

System.out.println(x); -> 11출력
System.out.println(y); -> 11출력
System.out.println(value1); -> 11출력
System.out.println(value2); -> 10출력

->후위연산자의 경우, 사용하고 다음 턴부터 바뀐 값이 적용 된다고 생각할 것.
->전위연산자의 경우 딜레이 없이 바로 바뀐 값이 적용 됨.
  • 증감연산자와 다른 연산자를 조합해서 수행문을 작성하지 말 것.

비교연산자

>   >=   <   <=   ==   != 
  • 두 값을 비교하여 비교결과를 true, false로 나타냄.
  • == 같다 / != 다르다
  • 항상 좌항이 기준.
  • 부등호를 먼저 적어야 함 >=(O) =>(X)
  • 항상 boolean은 짝지.
int a = 30000;
int b = 35000;
boolean result = a>=b ->false
System.out.println(1000 == 1000); -> true
System.out.println(1000 != 1000); -> false
System.out.println(2000 == 1000); -> false
System.out.println(2000 != 1000); -> true

논리연산자

  • 연산 결과는 언제나 boolean값(true, false)
  • 연산에 참여하는 값은 boolean 타입이거나 결과가 boolean으로 나올 경우에만 가능.
  • &&: 하나라도 false면 false
    ||: 하나라도 true면 true
  • 항상 boolean과 짝지
// 운행거리
int distance = 25000;
// 운행거리에 따른 무상수리 기준
int freeFixDistance = 30000;
		
boolean result = distance >= freeFixDistance;
System.out.println(result); -> false(유상수리)

삼항연산자(조건연산자)

변수 = 조건식 ? 값1 : 값2
조건식이 true이면 값1 대입.
조건식이 false이면 값2 대입.
  • 변수, 값 1, 값2의 타입이 동일해야함
  • 값1과 2에는 연산자도 올 수 있음.
int orderPrice = 700_000;
int point = orderPrice > 1_000_000 ? (int)(orderPrice*0.05) : (int)(orderPrice*0.02);

조건문 if

if문

  • 제어문 중 하나, 수행결과가 boolean값인 연산식이 와야함. true일 시 수행문 실행
if (조건식) {
	수행문;
    }
int score = 90;
if (score>60) {
	System.out.println("합격입니다.");
	}

if~else문

  • if문에서 true, false일때의 수행문을 각각 지정.
if (조건식) {
	true일 때 수행문;
} else {
	false일 때 수행문;
    }   
int score = 56;
if (score>=60) {
	System.out.println("합격입니다");
} else {
	System.out.println("불합격입니다");
}

if ~ else if ~ else문

  • 조건식이 여러가지일 때 사용하는 제어문
if (조건식1) {
	조건식1수행문;
} else if (조건식2) {
	조건식2수행문;
} else {
	조건식에 전부 부합하지 않았을때의 수행문;
}
-> else는 생략 가능하며, else {} else{}와 같이 여러개 작성 할 수 없음.
if (score >= 4.6) {
	System.out.println("A+");
} else if (score >= 4.0) {
	System.out.println("A");
} else {
	System.out.println("F");
  • else에는 조건식이 붙을 수 없음.

좋은 웹페이지 즐겨찾기