연산할 것이 여러 개이고 한번에 시도할 때는, AND(&&)를 사용한다.
int a = 3;
int b = 3;
int c = 5;
System.out.println(c > a && c > b);
c > a : true
C > b : true
System.out.println(c > a && c > b); #true && true
두 개 '모두' 참이므로 true를 반환한다.
int a = 3;
int b = 3;
int c = 5;
System.out.println(c > a || c > b);
System.out.println(c > a || c > b); # true || false
하나만 참이어도 참으로 출력된다.
System.out.println(!true);
System.out.println(!false);
출력결과 >> false
true
int a = 10;
int b = 20;
String c = "abc";
System.out.println(a + b);
System.out.println(a - b);
System.out.println(a * b);
System.out.println(a / b);
System.out.println(a % b);
System.out.println(a + b); >> 출력 결과: 30
System.out.println(a - b); >> 출력 결과: -10
System.out.println(a * b); >> 출력 결과: 200
System.out.println(a / b); >> 출력 결과: 0
System.out.println(a % b); >> 출력 결과: 10
'/'연산자는 몫을 반환
'%'연산자는 나머지를 반환
실수형태로 나타내기 위해서는 'int'보다는 'double' 사용
int a = 10;
int b = 20;
String c = "abc";
System.out.println(a + c);
출력 결과>> 10abc
문자열과 숫자를 연산하게 되면, 문자열로 타입을 바꿔 문자열끼리 병합이 된다.
int a = 5;
int b = 8;
System.out.println(a > b);
출력 결과>> False
참(false)인지 진실(true)인지 판단하는 연산자이다.
< , >, >=, <=, ==, != 는 비교 연산자이다.
int a = 1;
double price = 12.5;
a++; //하나씩 증가 a=a+1
a--; //하나씩 감소 a=a-1
++a;
--a;
위에 식과 아래 식은 반환되는 시간의 차이가 있다.
int a = 1;
System.out.println(a++);
System.out.println(a);
출력결과 >> 1
2
먼저, a의 초기 값이 출력되고, 나중에 덮어 써진 값이 출력된다.
int a = 1;
System.out.println(++a);
출력결과 >> 2
바로 덮어 써진 값이 출력된다.
int a = 1;
int b = 100;
if (a != b) {
System.out.println("a != b");
}
출력 결과 >> a != b
조건문은 if를 통해 나타낼 수 있다.
int a = 1;
int b = 100;
if (a == b) {
System.out.println("a == b");
} else {
System.out.println("else block");
}
else문을 통해 조건을 만족하지 않을 경우도 처리할 수 있다.
int a = 1;
int b = 100;
if (a == b) {
System.out.println("a == b");
} else if (a < b) {
System.out.println("a < b");
} else {
System.out.println("else block");
}
else if 문을 통해 조건문 여러 개를 설정할 수 있다.
다중 조건의 경우 조건을 만족하는 최초의 분기만 실행한다.
외부에서 변수를 선언할 때 주로 사용한다.
int a = 10;
switch (a + 1) {
case 9:
System.out.println("a + 1 == 9");
case 10:
System.out.println("a + 1 == 10);
case 11:
System.out.println("a + 1 == 11");
}
출력 결과 >> a + 1 == 1
int a = 10;
switch (a + 1) {
case 11:
System.out.println("a + 1 == 11");
case 10:
System.out.println("a + 1 == 10);
case 9:
System.out.println("a + 1 == 9");
}
case 순서를 바꾸었더니, case문이 전부 실행된다.
출력 결과 >> a + 1 == 11
a + 1 == 10
a + 1 == 9
case문은 조건을 만족했지만, 조건문을 끝내지 않아 발생하는 문제이다.
조건을 만족했을 때 조건문을 끝내고 싶다면, case 하위에 break를 추가 작성해야 한다.
int a = 10;
switch (a + 1) {
case 11:
System.out.println("a + 1 == 11");
break;
case 10:
System.out.println("a + 1 == 10);
break;
case 9:
System.out.println("a + 1 == 9");
break;
}
출력 결과 >> a + 1 == 11
default문을 넣어, 모든 case에 만족하지 않을 때 실행되는 조건문을 사용할 수 있다.
int a = 10;
switch (a + 1) {
case 11:
System.out.println("a + 1 == 11");
break;
case 10:
System.out.println("a + 1 == 10);
break;
case 9:
System.out.println("a + 1 == 9");
break;
default:
System.out.println("default");
}
for 반복문을 사용하기 위해서는, 세 가지의 조건이 필요하다.
1. 초기화된 변수
2. 조건식 (무한루프에 빠지지 않도록 도와준다.)
3. 증감식
**예시
for (일반적으로 정수형의 초기화된 변수 ; 변수의 범위 조건 설정 ; 증감식) {
반복할 것..
}
for (int i = 0; i < 10; i++){
System.out.println(i);
}
while문은 보통 변수를 외부에서 선언한다.
int b = 10;
while (b > 0) {
System.out.println(b);
b--;
}
변수 선언을 외부에서 하고, 조건식을 대괄호 안에 선언하는 것이 if문과 다르다!
while과 동작하는 방식이 같지만, do문은 조건식과 상관없이 무조건 한번은 실행된다는 점이 while문과 다르다.
int b = 10;
do {
System.out.println(b);
b--;
} while (b > 0);
출력 결과 >> 10
9
8
7
6
5
4
3
2
1
int b = 0;
do {
System.out.println(b);
b--;
} while (b > 0);
출력 결과 >> 0