자바 : bool + int

Oct 18 2020

부울 / 정수 추가 및 평가와 함께 Java를 작동시키는 방법이 있습니까? 보다 구체적으로, C ++에는 많은 if 문을 단축하는 적절한 기능이 있습니다.

for (int i = 0; i < n; ++i)
    cout << i;

다음과 같습니다.

while (n--)
    cout << n;

또는 대신 :

for (int i = 0; i < n; ++i)
    if (x == y)
        count++;

하나는 가질 수 있습니다

for (int i = 0; i < n; ++i)
    count += (x==y);

Java에서 이와 유사한 작업을 수행 할 수있는 방법이 있습니까?

답변

3 ArvindKumarAvinash Oct 18 2020 at 17:02

동일한 효과를 위해 Java에서 삼항 연산자를 사용할 수 있습니다.

public class Main {
    public static void main(String[] args) {
        int x = 5, y = 10, count = 0;
        count += x == y ? 1 : 0;
        System.out.println(count);

        x = 10;
        count += x == y ? 1 : 0;
        System.out.println(count);
    }
}

산출:

0
1
Polygnome Oct 18 2020 at 17:06

코드는 쓰는 것보다 더 자주 읽습니다. 삼항 연산자를 사용할 수 있지만 이것 의 의미같을 때만 증가 count하는 것으로xy 요약됩니다 . 따라서 이것을 작성하는 가장 읽기 쉬운 방법은 다음을 사용하는 것입니다.

for (int i = 0; i < n; ++i)
   if (x == y) count++;

count += (x==y)다른 언어 에서처럼 트릭을 수행하는 것은 논리를 난독 화하기 때문에 이미 나쁜 습관입니다. 쓰기가 아닌 읽기에 최적화하십시오.