[연산자]
-항의 갯수에 따라 단항 연산자, 이항 연산자, 삼항 연산자로 나뉨
-연산을 하게 되면 항상 결과가 존재한다
-삼항연산자는 조건에 대한 참과 거짓을 판별함
-대입연산자 : 변수에 값을 대입하는 연산자
-부호연산자 : 양수 음수를 사용하기 위해 +, - 사용
-산술연산자 : 사칙연산과 나머지를 구하는 연산자
-나누기 연산할 때 정수와 정수를 연산하면 정수로 된 몫만 나오지만 실수와 정수, 실수와 실수를 연산하면 소수점까지 나옴
-증감연산자 : ++, -- 를 사용하여 항의 값에 1을 더하거나 뻼
-증감연산자를 앞에 붙이면 연산을 먼저 하고 다음으로 넘어감 : 선증가, 선감소
-증감연산자를 뒤에 붙이면 같은 줄에 있는 다른 명령을 먼저 수행하고 연산을 진행함 : 후증가, 후감소
-관계연산자(ppt참고) : 연산의 결과는 결국 참, 거짓이기 때문에 조건문에 사용
-논리연산자 : 0과1을 가지고 참과 거짓을 계산하는 것
-논리계산에서는 0이 아니면 무조건 참
-AND 연산에서는 모두 참이어야 참, 하나라도 거짓이면 거짓
-OR 연산에서는 하나만 참이이도 참, 둘다 거짓이어야 거짓
-NOT 연산에서는 참이면 거짓, 거짓이면 참
-복합 대입 연산자 : +=, -= 등등 자기 자신에 연산을 하는 연산자
-조건연산자 -> 조건식 ? 결과1 : 결과2, 조건식이 참이면 결과1을 반환 거짓이면 결과2를 반환
-조건연산자에서 결과1 과 결과2는 같은 자료형이어야 함
[예시1]
int add = 1 + 2;
int sub = 10 - 5;
int mul = 10 * 2;
int div = 10 / 4;
int remainder = 10 % 5;
System.out.println(add);
System.out.println(sub);
System.out.println(mul);
System.out.println(div);
System.out.println(remainder);
// 삼항연산자 예시
System.out.println(remainder == 0 ? "5의 배수이다" : "5의 배수가 아니다");
[예시2]
int num = 10;
num = num + 1;
System.out.println(num++);
System.out.println(num++);
System.out.println(num);
[예시3]
int num = 11;
boolean flag1 = true;
boolean flag2 = true;
boolean flag3 = num % 2 == 0;
System.out.println(flag1 && flag2);
System.out.println(flag1 && flag3);
System.out.println(!(flag2 || flag3 && flag1));
[예시4]
int num = 100;
num = num + 1;
num += 100;
System.out.println(num);
[예시5]
int num1 = 10;
int num2 = 0;
int result = num1 > num2 ? num1 * -1 : num2 * -1;
System.out.println(result);
int num = 79;
// 조건을 일일이 확인해가며 다음항으로 넘어감
// 조건이 여러개일 경우 다음줄로 넘겨서 작성
int result2 = num / 90 == 1 ? 90
: num / 80 == 1 ? 80
: num / 70 == 1 ? 70 : 0;
System.out.println(result2);
[예시6]
/*
* 시험 성적을 학점으로 계산하는 프로그램
*
* 정수자료형 score변수 선언 88점으로 초기화
*
* 문자자료형 grade변수 선언
*
* 조건 score가 0점보다 작거나 100점보다 크면 X를 출력 score가 90 ~ 100점이면 A학점 score가 80 ~ 89점이면
* B학점 score가 70 ~ 79점이면 C학점 score가 60 ~ 69점이면 D학점 score가 0 ~ 59점이면 F학점
*
* System.out.println("점수(88) : B학점");
*/
int score = 100;
// int sRem;
String grade1 = (score < 0) || (score > 100) ? "X"
: score > 94 ? "A+"
: score > 89 ? "A"
: score > 84 ? "B+"
: score > 79 ? "B"
: score > 74 ? "C+"
: score > 69 ? "C"
: score > 64 ? "D+"
: score > 59 ? "D" : "F";
System.out.println("점수(" + score + ") : " + grade1 + "학점");
// char puls1 = (sRem = score % 10) > 4 ? '+' : '\0';
char puls = score > 100 || score < 60 ? '\0'
: score % 10 > 4 || score == 100 ? '+' : '\0';
char grade = (score < 0) || (score > 100) ? 'X'
: score > 89 ? 'A'
: score > 79 ? 'B'
: score > 69 ? 'C'
: score > 59 ? 'D' : 'F';
System.out.println("점수(" + score + ") : " + grade + puls + "학점");
'백엔드개발자 준비하기' 카테고리의 다른 글
[백엔드개발자 준비하기] 조건문 (0) | 2023.01.04 |
---|---|
[백엔드개발자 준비하기] Scanner(스캐너) (0) | 2023.01.04 |
[백엔드개발자 준비하기] 형변환 (0) | 2023.01.04 |
[백엔드개발자 준비하기] 메모리와 변수 (0) | 2022.12.30 |
[백엔드개발자 준비하기] 개발환경 구축 (0) | 2022.12.30 |