- 조건식의 결과가 true(참)인 경우와 false(거짓)인 경우에 따라 다른 결과가 수행
- if (조건문)을 간단히 표현할 때 사용
package basic.ch03;
// 수입하다, 가지고 오다
import java.util.Scanner;
/**
*
* 삼항 연산자(조건 연산자)
* int num = 조건식 ? 결과1 : 결과2
*
*/
public class Operation8 {
public static void main(String[] args) {
System.out.println("입력 받은 두 수 중에 큰 수를 출력하세요");
// 자바 특징 --> 풍부한 라이브러리를 지원 한다
// JDK --> 표준 라이브러리(자바 개발자들이 만들어준 기능, 도구) 를 사용해보자.
// 데이터 타입( 특징 : )
// 콘솔창에서 사용자가 키보드로 입력한 값을 받아 주는 녀석이다.
Scanner sc = new Scanner(System.in);
int x = sc.nextInt(); // 사용자가 입력한 정수값을 받아 주는 녀석
System.out.println(" x 의 받은 값은 : " + x);
int y = sc.nextInt();
System.out.println("y 의 받은 값은 : " + y);
System.out.println("----------------------");
// 조건식 ? 결과1 : 결과2;
int max = x > y ? x : y;
System.out.println(" 두 수 중에 큰 수는 " + max + " 입니다.");
// 자원 닫기
sc.close();
} // end of main
} // end of class
연산자 우선순위
- 괄호의 우선 순위가 제일 높음.
- 다음으로 산술>비교>논리>대입
- 단항>이항>삼항 순
- 연산자의 연산 진행 방향 : 왼 → 오 (단항 연산자와 대입 연산자의 경우, 오 → 왼)
연산자 연습문제
package basic.exercise;
public class OperatorPractice {
// 코드의 시작점
public static void main(String[] args) {
// 1. intData와 doubleData을 덧셈 연산 하여 result1 변수에 담고
// 결과값 30.5를 출력 하세요.
int intData = 10;
double doubleData = 20.5;
// result1 변수명으로 사용하세요
double result1 = intData + doubleData;
System.out.println(result1);
// 2. result1 변수를 정수형으로 강제 형 변환 해서 출력하세요
// 3. intData 변수에서 -1을 뺀 후 출력하세요
// 단, 단항 연산자 사용
// 4. doubleData 변수에 값을 -20.5로 출력 하세요
// 단, doubleData 값을 변경하지 마세요
// 5. 변수 intData 와 doubleData, 관계 연산자를 사용해서
// result2 변수에 값을 true 담기도록 식을 만들고 만들고 출력하세요
int num1 = 10;
int num2 = 30;
// 6. 변수 result3 을 선언하고 num1과 num2 변수가 합이
// 숫자 50보다 큰지 비교연산자를 사용해서 결과를 담고 출력하세요.
// 7. num1과 num2 값 중 큰 수를 삼항 연산자를 사용해서
// max 변수에 값을 담고 출력해주세요
} // end of main
} // end of class
-풀이
package basic.exercise;
// 코드의 시작점
public class OperatorPractice {
// 코드의 시작점
public static void main(String[] args) {
// 1. intData와 doubleData을 덧셈 연산 하여 result1 변수에 담고
// 결과값 30.5를 출력 하세요.
int intData = 10;
double doubleData = 20.5;
// result1 변수명으로 사용하세요
double result1 = intData + doubleData;
System.out.println(result1);
// 2. result1 변수를 정수형으로 강제 형 변환 해서 출력하세요
System.out.println((int)result1);
// 3. intData 변수에서 -1을 뺀 후 출력하세요
// 단, 단항 연산자 사용
--intData;
System.out.println(intData);
// 4. doubleData 변수에 값을 -20.5로 출력 하세요
// 단, doubleData 값을 변경하지 마세요
// 20.5 <----
// 부호 연산자를 알고 있는가?
System.out.println(-doubleData);
// 5. 변수 intData 와 doubleData, 관계 연산자를 사용해서
// result2 변수에 값을 true 담기도록 식을 만들고 만들고 출력하세요
int num1 = 10;
int num2 = 30;
boolean result2 = num1 < num2;
System.out.println(result2);
// 6. 변수 result3 을 선언하고 num1과 num2 변수가 합이
// 숫자 50보다 큰지 비교 연산자를 사용해서 결과를 담고 출력하세요
boolean result3 = (num1 + num2) > 50 ;
System.out.println(result3);
// 7. num1과 num2 값 중 큰 수를 삼항 연산자를 사용해서
// max 변수에 값을 담고 출력해주세요
// 조건식 ? 결과1 : 결과2
int max = (num1 > num2) ? num1 : num2;
System.out.println("max : " + max);
} // end of main
} // end of class
'Java' 카테고리의 다른 글
반복문( for ) (0) | 2024.04.12 |
---|---|
조건문 if (1) | 2024.04.11 |
연산자(관계,논리,빠른평가,삼항) (0) | 2024.04.11 |
연산자(복합 대입 연산자) (0) | 2024.04.11 |
연산자(증감, 감소) (0) | 2024.04.11 |