산술 연산자
연산자
: 연산 기호
피연산자
: 연산 대상
package operator;
public class Operator1 {
public static void main(String[] args) {
//변수 초기화
int a = 5;
int b = 2;
//덧셈 (+)
int sum = a + b;
System.out.println("a + b = " + sum);//출력 a + b = 7
//뺄셈 (-)
//곱셈 (*)
//나눗셈 (/)
//나머지 (%)
}
}
문자열 더하기
package operator;
public class Operator2 {
public static void main(String[] args) {
//문자열과 문자열 더하기1
String result1 = "Heelo" + "world";
System.out.println(result1);
//문자열고 문자열 더하기2
String s1 = "string1";
String s2 = "string2";
String result2 = s1 + s2;
System.out.println(result2);
//문자열과 숫자 더하기1
String result3 = "a + b = " + 10;
System.out.println(result3);
//문자열과 숫자 더하기2
int num = 20;
String str = "a + b = ";
String result4 = "a + b = 20";
System.out.println(result4);
}
}
- 자바는 문자와 숫자를 더하면 숫자를 문자열로 변경한 다음에 서로 더함
연산자 우선순위
package operator;
public class Operator3 {
public static void main(String[] args) {
int sum1 = 1 + 2 * 3; //1 + (2 * 3)
int sum2 = (1 + 2) * 3;
System.out.println("sum1 = " + sum1);
System.out.println("sum2 = " + sum2);
}
}
- 연산자가 많아서 복잡해지는 경우 괄호를 추가해서 명확하고 단순하게 만드는 것이 good
연산자 우선순위 암기법(외울 필요 X)
- 괄호
- 단항 연산자(++, —, !, ~, new, (type))
- 산술 연산자 (*, /, % 우선 , 그 다음에 +, -)
- Shift 연산자 (<<. >> >>>)
- 비교 연산자 ( <, ≤, >, ≥, instanceof)
- 등식 연산자(==, ≠)
- 비트 연산자 ( &, ^, |)
- 논리 연산자 ( &&, ||)
- 삼항 연산자 (? :)
- 대입 연산자(=, +=, -=, *= )
암기 방법 2가지
- 상식선에서 우선순위를 사용하자
- 애매하면 괄호를 사용하자
증감 연산자
package operator;
public class OperatorAdd1 {
public static void main(String[] args) {
int a = 0;
//증감 연산자
++a; //a = a + 1
System.out.println("a = " + a);
}
}
전위, 후위 증감연산자
++a
: 전위(Prefix) 증감 연산자
a++
: 후위(Postfix) 증감 연산자
package operator;
public class OperatorAdd2 {
public static void main(String[] args) {
//전위 증감 연산자 사용 예
int a = 1;
int b = 0;
b = ++a; // a의 값을 먼저 증가시키고, 그 결과를 b에 대입
System.out.println("a = " + a + " , b = " + b);
//후위 증감 연산자 사용 예
a = 1; //a 값을 다시 1로 지정
b = 0; //b 값을 다시 0 으로 지정
b = a++; //a의 현재 값을 b에 먼저 대입하고 그 후 a값을 증가시킴
System.out.println("a = " + a + " , b = " + b);
}
}
비교 연산자
package operator;
public class Comp1 {
public static void main(String[] args) {
int a = 2;
int b = 3;
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);
//결과를 boolean 변수에 담을 수 있음
boolean result = a == b;
System.out.println(result);
}
}
문자열 비교
.equals()
메서드를 사용해야 함
package operator;
public class Comp2 {
public static void main(String[] args) {
String str1 = "문자열1";
String str2 = "문자열2";
boolean result1 = "hello".equals("hello"); //리터럴 비교
boolean result2 = str1.equals("문자열1"); //문자열 변수, 리터럴 비교
boolean result3 = str1.equals(str2); //문자열 변수 비교
System.out.println(result1);
System.out.println(result2);
System.out.println(result3);
}
}
논리 연산자
&&
: and 연산자
||
: or 연산자
!
: not 연산자
package operator;
public class Logical1 {
public static void main(String[] args) {
System.out.println("&& : AND 연산");
System.out.println(true && true);
System.out.println(true && false);
System.out.println(false && false);
System.out.println("|| : OR 연산");
System.out.println(true || true);
System.out.println(true || false);
System.out.println(false || false);
System.out.println("! 연산");
System.out.println(! true);
System.out.println(! false);
}
}
대입 연산자
=
: 값을 변수에 할당하는 연산자
+) 축약 대입 연산자
+=
,-=
,*=
'JAVA' 카테고리의 다른 글
[JAVA] Section4) 조건문 (0) | 2024.03.07 |
---|---|
[JAVA] Section3) Problems (0) | 2024.03.04 |
[JAVA] Section 2) problems (1) | 2024.01.03 |
[JAVA] Section2) 변수 (1) | 2024.01.03 |
[JAVA] Section 1) Hello World (0) | 2024.01.03 |
Uploaded by Notion2Tistory v1.1.0