[Java] 삼항연산자에 System.out.print 넣는방법

서현서현·2022년 2월 10일
0

작은 실수들

목록 보기
1/19

package chapter03;

import java.util.Scanner;

//메트로폴리스(거대도시)는 다음과 같은 2가지 조건 중 하나를 만족하여야 한다고 가정한다. 
// 어떤 도시가 메트로폴리스인지를 알아보는 프로그램을 작성하여 보자.(삼항연산자 사용)
//1. 한 나라의 수도이고, 인구가 100만 이상이어야 한다. 
//2. 연 소득이 1억 이상인 인구가 50만 이상이어야 한다.
public class ExerciseExample03_2 {
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		
		
		
		System.out.print("수도 입니까?(수도:1, 수도아님:0) ");
		int capital = scanner.nextInt();
		System.out.print("총 인구는? (단위:만) ");
		int totalPopulation = scanner.nextInt();
		System.out.print("연소득이 1억 이상인 인구는? (단위:만)");
		int wealthyPopulation = scanner.nextInt();
		
		((capital==1 && totalPopulation >= 100) || wealthyPopulation>=50) ? System.out.print("이 도시는 메트로폴리스 입니다") : System.out.print("이 도시는 메트로폴리스가 아닙니다");)

이 예제에서 맨 마지막 삼항연산자 연산이 오류가 떴다.



((capital==1 && totalPopulation >= 100) || wealthyPopulation>=50) ? System.out.print("이 도시는 메트로폴리스 입니다") : System.out.print("이 도시는 메트로폴리스가 아닙니다");)

바로 이부분 때문인데, 이유는 삼항연산자는 변수를 넣어주는 용도라서 오른쪽에 print문을 넣는다고 실행이 되는게 아니기 때문!


System.out.print(((capital==1 && totalPopulation >= 100) || wealthyPopulation>=50) ? "이 도시는 메트로폴리스 입니다" : "이 도시는 메트로폴리스가 아닙니다");

위와 같이 System.out.print를 조건식에 써주고, 괄호 안에 들어갈 내부 문자를 큰따옴표를 포함하여 오른쪽(T,F)자리에 넣어주면 실행이 된다

0개의 댓글