티스토리 뷰

JAVA 160531-2 연산처리

package pack;


public class test4 {


public static void main(String[] args) {

// 논리 연산자 처리 시 주의 사항

boolean a = true, b = false, c;

c = a || b; //or

System.out.println(c);

c = a && b; //and

System.out.println(c);

System.out.println();

boolean b1, b2;

b1 = aa();

System.out.println(b1);

System.out.println(bb());

System.out.println("\n --------주의 할 점----------");

b2 = aa() || bb();

// "||"의 특징이 하나만 만족하면 되기 때문에, 앞에 있는 'aa()'가 만족해서 뒤에 있는 'bb()'는 수행하지 않는다.

System.out.println(b2);

System.out.println();

b2 = bb() || aa();

// 반대로 앞에있는 'bb()'에서 만족을 하지 못했기에 뒤에있는 'aa()'까지 수행함.

// 만족=true , 불만족=false

System.out.println(b2);

System.out.println("\n\n\n");

b2 = aa() && bb();

System.out.println(b2);

// &&는 둘다 만족해야 하기 때문에 'aa()'에서 만족했지만, 값을 하나 더 만족해야 하기 때문에

// 뒤에 있는 'bb()'값도 읽는다.

System.out.println();

b2 = bb() && aa();

System.out.println(b2);

// 반대로 둘다 만족해야 하는 상황에 처음부터'bb()' 만족하지 못했기 때문에

// 뒤에 있는 aa()를 실행할 이유가 없어 실행하지 않고 끝냄.

System.out.println("\n\n -------주의 점 해결 방법? (모두 수행을 원할 시)-------");

b2 = aa() | bb();

System.out.println(b2);

b2 = bb() | aa();

System.out.println(b2);

System.out.println();

b2 = aa() & bb();

System.out.println(b2);

b2 = bb() & aa();

System.out.println(b2);

}

public static boolean/*반환값 타입*/ aa(){

System.out.println("aa 출력");

return true;

}

public static boolean bb(){

System.out.println("bb 출력");

return false;

}


}






[출력 화면]


true
false

aa 출력
true
bb 출력
false

 --------주의 할 점----------
aa 출력
true

bb 출력
aa 출력
true




aa 출력
bb 출력
false

bb 출력
false


 -------주의 점 해결 방법? (모두 수행을 원할 시)-------
aa 출력
bb 출력
true
bb 출력
aa 출력
true

aa 출력
bb 출력
false
bb 출력
aa 출력
false


'📁 공부정리 > JAVA' 카테고리의 다른 글

JAVA 160531-4 정수 값 처리  (0) 2016.05.31
JAVA 160531-3 입력받기  (0) 2016.05.31
JAVA 160531-1 (연산 정리)  (0) 2016.05.31
JAVA 160530-2  (0) 2016.05.30
JAVA 160530-1  (0) 2016.05.30

Recent Comments