1.연산자
연산자는 특별히 어려울 것은 없을것인데 익숙한 연산자는 생략하고 프로그래밍에서 나오는 생소한 연산자가 있을 수 있다.
몇개만 추려보자면
증감 연산자
X++ , ++X : 같이 표시하고 연산자가 뒤에 있다면 계산 후에 1을 더하고 앞에 있다면 1을 더하고 계산하는 것.
&& : and 연산자로 양쪽의 조건이 둘 다 만족하면 true를 반환
|| : or 연산자로 양쪽의 조건이 둘 중 하나만 만족하더라도 true를 반환 (백스페이스 키 옆 쉬프트+원 키)
논리 연산자
yn != yn : !=는 bool타입 true값을 false로, 반대로 false값은 true로 바꿔준다.
비교 연산자
== : 이퀄이 2번 쓰여지는 ==은 양쪽 값이 같으면 true 값이 다르면 false 값을 반환한다.
단, String 타입의 비교는 ==을 사용하는 것을 지양하고 되도록이면 String변수1.equals(String변수2)의 형식으로
<, >, <=, >= : 익숙한 연산자로 생략
아래의 각종 예제를 통해 어떻게 쓰이는지 이해해보자.
package chap02.ex01.one;
public class One {
public static void main(String[] args) {
// 증감 연산자
int x = 1;
int y = 1;
x++; // 증가가 나중
++y; // 증가가 먼저
System.out.println("X : " + x);
System.out.println("Y : " + y);
int result = (++x) + 10;
int result2 = (y++) + 10;
// 12 : x가 먼저 증가하고 10과 더함.
// 11 : y가 10과 더해지고 y가 증가.
System.out.println("1 : " + result);
System.out.println("2 : " + result2);
// 논리 부정 연산자(논리수학, 이산수학)
boolean yn = true;
System.out.println("Y : " + yn);
yn = !yn;
System.out.println("Y : " + yn);
}
}
package chap02.ex02.two;
public class Compare {
public static void main(String[] args) {
int v1 =1;
double v2 = 1.0;
int v3 = 4;
String v4 = "JAVA";
String v5 = new String("JAVA");
//비교는 왼쪽부터 읽어 나간다.
System.out.println(v1==v2); //T
System.out.println(v1!=v2); //F
System.out.println(v1<v3); //T
System.out.println(v4==v5); // 문자열 비교에 ==를 쓰면 안되는 이유
System.out.println(v4.equals(v5)); // '.equals'를 사용
// AND 조건 : 둘 다 만족(&&)
// OR 조건 : 둘 중 하나 만족(||)
int value = 6;
System.out.println(value > 1 && value <7);
System.out.println(value % 2 ==0 || value % 3==0);
}
}
package chap02.ex02.two;
public class Suhstitution {
public static void main(String[] args) {
// A += 10 == A = A + 10
String str = "대입 연산자는";
str += " 합 한 값을";
str += " 누적하는데";
str += " 유용하게 사용 된다.";
System.out.println(str);
int num = 1;
num += 2;
num += 3;
num += 4;
num += 5;
System.out.println(num);
}
}
package chap02.ex02.two;
public class Two {
public static void main(String[] args) {
// %연산(modify 연산)
// 홀짝, 배수 계산
System.out.println("5%2 = " + 5%2);
System.out.println();
String str1 = "JDK " + 8 + 0.65; // 문자 + 숫자
System.out.println(str1);
String str2 = 8 + 0.65 + " version"; // 숫자 + 문자
System.out.println(str2);
String str3 = "JDK " + (8 + 0.65);
System.out.println(str3);
}
}
2. 삼항 연산자 [조건식] ? [값1] : [값2]
삼항 연산자는 '[조건식] ? [값1] : [값2]'와 같이 쓰는데
만약 조건식이 참, true일 경우 값1을 반환하고 false일 경우는 값2를 반환하게 된다.
int div = 33;
String result = (div%2 == 0) ? "짝수" : "홀수";
System.out.println(result + " 입니다.");