Computer Language/JAVA
[240610] Operator
westwith
2024. 6. 11. 00:38
728x90
0. 김영한님의 자바 강의 듣는 공부 일지
강의 주소 :
[지금 무료] 김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음 | 김영한 - 인프런
김영한 | 프로그래밍에 처음 입문하는 분들을 위한 자바 강의입니다. 코드를 따라하면서 손쉽게 자바를 배울 수 있습니다., 국내 개발 분야 누적 수강생 1위, 제대로 만든 김영한의 자바 입문[사
www.inflearn.com
1. 산술 연산자
- + , - , * , /, %
package operator; //패키지 선언
public class Operator1 { //클래스 Operator1 시작
public static void main(String[] args) { //main 매서드 시작
//변수 초기화
int a = 5;
int b = 2;
//덧셈
int sum = a + b;
System.out.println("a + b = " + sum); //출력 a + b = 7
//뺄셈
int diff = a - b;
System.out.println("a - b = " + diff);
//곱셈
int multi = a * b;
System.out.println("a * b = " + multi);
//나눗셈
int div = a / b; //int 형 계산에서 소숫점 표기 불가
System.out.println("a / b = " + div);
//나머지
int mod = a % b;
System.out.println("a % b = " + mod);
} // main 매서드 끝
} // 클래스 Operator1 끝
---
a + b = 7
a - b = 3
a * b = 10
a / b = 2
a % b = 1
2. 문자열 더하기
- 자바는 문자열에도 + 연산을 사용할 수 있음
- 자바에서 문자와 숫자를 더하면 숫자를 문자열로 변경한 다음에 서로 더함
- 문자열에 더하는 것은 다 문자열이 됨
package operator; //패키지 선언
public class Operator2 { //클래스 Operator2 시작
public static void main(String[] args) { // main 매서드 시작
//문자열과 문자열 더하기1
String result1 = "hello" + "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 = str + num;
System.out.println(result4);
} // main 매서드 끝
} // 클래스 Operator2 끝
---
helloworld
string1string2
a + b =10
a + b =20
3. 연산자 우선순위
package operator; //패키지 선언
public class Operator3 { // 클래스 Operator3 시작
public static void main(String[] args) { // main 매서드 시작
int sum1 = 1 + 2 * 3; // 1 + (2 * 3)
int sum2 = (1 + 2) * 3;
System.out.println("sum1 = " + sum1); // 7
System.out.println("sum2 = " + sum2); // 9
} // main 매서드 끝
} // 클래스 Operator3 끝
---
sum1 = 7
sum2 = 9
package operator; //패키지 선언
public class Operator4 { // 클래스 Operator4 시작
public static void main(String[] args) { // main 매서드 시작
int sum3 = 2 * 2 + 3 * 3; // (2 * 2) + (3 * 3)
int sum4 = (2 * 2) + (3 * 3); //sum3과 같다
System.out.println("sum3 = " + sum3);
System.out.println("sum4 = " + sum4);
//복잡하면 괄호를 넣는게 낫다
} // main 매서드 끝
} // 클래스 Opterator4 끝
---
sum3 = 13
sum4 = 13
- 연산이 복잡하면 괄호를 넣는게 낫다
<연산자 우선순위 암기법>
1. 상식선에서 우선순위를 생각하자
2. 애매하면 괄호()를 사용하자
4. 증감 연산자
- ++ , --
package operator; //패키지 선언
public class OperatorAdd1 { //클래스 OperatorAdd1 시작
public static void main(String[] args) { // main 매서드 시작
int a = 0;
a = a + 1;
System.out.println("a =" + a); //1
a = a + 1;
System.out.println("a =" + a); //2
//증감연산자
++a; // a = a + 1;
System.out.println("a = " + a); //3
++a; // a = a + 1;
System.out.println("a = " + a); //4
} // main 매서드 끝
} // 클래스 OperatorAdd1 끝
---
a =1
a =2
a = 3
a = 4
- 전위/후위 증감연산자
=> ++a , a++
package operator; //패키지 선언
public class OperatorAdd2 { // 클래스 OperatorAdd2 시작
public static void main(String[] args) { // main 매서드 시작
//전위 증감 연산자 사용 예
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); // a = 2, b = 1
} // main 매서드 끝
} // 클래스 OperatorAdd2 끝
---
a = 2,b = 2
a = 2,b = 1
5. 비교 연산자
- == , != , > , < , >= , <=
- 결과는 참(true) 이나 거짓(false)이 나옴, boolean형을 사용
package operator; // 패키지 선언
public class Comp1 { // 클래스 Comp1 시작
public static void main(String[] args) { // main 매서드 시작
int a = 2;
int b = 3;
System.out.println(a == b); // false, a와 b는 같지 않음
System.out.println(a != b); // true, a와 b는 다르다
System.out.println(a > b); // false , a는 b보다 크지 않다.
System.out.println(a < b); // true, a는 b보다 작다
System.out.println(a >= b); // false, a는 b보다 크거나 같지 않다
System.out.println(a <= b); // true, a는 b보다 작거자 같다.
//결과는 boolean 변수에 담기
boolean result = a == b; // a == b : false
System.out.println(result); //false
} // main 매서드 끝
} // 클래스 Comp1 끝
---
false
true
false
true
false
true
false
- 문자열 비교
.equals() 메서드 사용
package operator; // 패키지 선언
public class Comp2 { // 클래스 Comp2 시작
public static void main(String[] args) { //main 메서드 시작
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);
} // main 메서드 끝
} // 클래스 Comp2 끝
---
true
true
false
6. 논리 연산자
- && , || , !
package operator; // 패키시 선언
public class Logical1 { //클래스 Logical1 시작
public static void main(String[] args) { // main 메서드 시작
System.out.println("&& : AND 연산");
System.out.println(true && true); //true
System.out.println(true && false); //false
System.out.println(false && false); // false
System.out.println("|| : OR 연산");
System.out.println(true || true); //true
System.out.println(true || false); //true
System.out.println(false || false); //false
System.out.println("! 연산");
System.out.println(!true); //false
System.out.println(!false); //true
System.out.println("변수활용");
boolean a = true;
boolean b = false;
System.out.println(a && b); //false
System.out.println(a || b); //true
System.out.println(!a); //false
System.out.println(!b); //true
} // main 메서드 끝
} // 클래스 Logical1 끝
---
&& : AND 연산
true
false
false
|| : OR 연산
true
true
false
! 연산
false
true
변수활용
false
true
false
true
package operator; //패키지 선언
public class Logical2 { //클래스 Logical2 시작
public static void main(String[] args) { //main 메서드 시작
int a = 15;
// a는 10보다 크고 20보다 작다
boolean result = a > 10 && a < 20; // ( a > 10) && ( a < 20 )
System.out.println("result =" + result);
} // main 메서드 끝
} // 클래스 Logical2 끝
---
result =true
7. 대입 연산자
- 축약(복합) 대입 연산자 : += , -= , *=, /= , %=
package operator; // 패키지 선언
public class Assign1 { //클래스 Assign1 시작
public static void main(String[] args) { // main 메서드 시작
int a = 5; //5
a += 3; //8
a -= 2; //6
a *= 4; //24
a /= 3; //8
a %= 5; //3
System.out.println(a); //3
} // main 메서드 끝
} // 클래스 Assign1 끝
---
3
8. 문제와 풀이
package operator; //패키지 선언
public class OperationEx1 { //클래스 OperationEx1 시작
public static void main(String[] args) { // main 메서드 시작
int num1 = 10;
int num2 = 20;
int num3 = 30;
int sum = num1 + num2 + num3 ;
int average = (sum)/3;
System.out.println("sum = " + sum);
System.out.println("average = " + average);
} // main 메서드 끝
} // 클래스 OperationEx1 끝
---
sum = 60
average = 20
package operator; // 패키지 선언
public class OperationEx2 { // 클래스 OperationEx2 시작
public static void main(String[] args) { // main 메서드 시작
double val1 = 1.5;
double val2 = 2.5;
double val3 = 3.5;
double sum = val1 + val2 + val3;
double average = sum/3;
System.out.println("sum = " + sum);
System.out.println("average = " + average);
} // main 메서드 끝
} // 클래스 OperationEx2 끝
---
sum = 7.5
average = 2.5
package operator; // 패키지 선언
public class OperationEx3 { //클래스 OperationEx3 시작
public static void main(String[] args) { // main 메서드 시작
int score = 80;
System.out.println( 80 <= score && score <= 100);
/* 정답예시
boolean result = score >= 80 && score <= 100;
System.out.println(result);
*/
} // main 메서드 끝
} // 클래스 OperationEx3
---
true
<오늘의 단축키> *Window 기준
⭐ 한 줄 복사 (ctl + D)
⭐ 한 줄 삭제 (ctl + Y)
⭐ 마지막에 실행한 것을 다시 실행 (ctl + R)
⭐ ctl + shift + F10
⭐ 줄 끝에 세미콜론 ( ctl + shift + enter)
⭐ psvm (public static void main)
⭐ sout (system.out.println)
⭐ soutv (value)
728x90