2014-09-07 2 views
-3

에 의미 :무엇 : 아래의 코드에서 자바

public static void main(String[] args) { 
    String echo = (args.length == 1) ? "Your name is "+args[0]: "Wrong number of arguments!"; 
    System.out.println(echo); 
} 

당신은 단지 하나 개의 인수를 주면 그것은 당신의 이름을 인쇄합니다, 그렇지 않으면 꽤 분명하다 인수의 잘못된 번호, 당신을 경고합니다, 하지만 ?:은 어떻게 운영자가 여기에서 일합니까?

+0

이것은 "혼란스런 얼굴"연산자입니다. 즉, "3 진 연산자"라는 용어를 모르고 온라인에서 검색 할 수 없다는 의미입니다. –

+0

It 's [Elvis] (http://en.wikipedia.org/wiki/Elvis_operator) –

+1

@BenjaminGruenbaum : 나는 달랐다! https://www.google.co.uk/search?q=java%20operator - 처음 두 번 방문하면 이름이 표시됩니다. –

답변

2

?: 연산자는 다음과 같이 사용된다 Ternary operator라고 :

public static void main(String[] args) { 

    String echo = null; 
    if(args.length == 1){ 
     echo = "Your name is " + args[0]; 
    }else{ 
     echo = "Wrong number of arguments!"; 
    } 

    System.out.println(echo); 

} 
0

ternary operator :

condition ? value_if_true : value_if_false

귀하의 코드는 다음과 같이 쓸 수 있습니다.

a ? b : c 

의미 : b 경우 a이 참, 그렇지 않으면 c

0

그것은 경우 절과 같은 종류의 것입니다. 이 부분 연산자의 첫 번째 부분 인은 테스트 문이며 true로 평가되면 코드가 실행됩니까? 그렇지 않은 경우 실행합니다 :

관련 문제