JAVA

[java]-if문(조건 연산자),논리 연산자 처리

라텐느 2024. 8. 10. 15:04
반응형

20240808수업

java를 실행하기 앞서 엑셀프로그램에서 논리가 어떻게 작동하는지 알아봅니다.

   num    name     age   addr  gender 
   번호   이름     나이  주소  성별
     1    카리나    22   부산   여
     2    윈터      21   울산   여
     3    마동석    37   서울   남
     4    미나      17   일본   여
     5    사나      28   부산   여


  20대 부산, 울산 여자를 출력하는 식


20<=E3 AND E3<=29   :  20 대
   AND G3="여"           : 여자
   AND F3="부산"         : 부산
    OR  F3="울산"       : 울산

20<=E3 AND E3<=29)   :  20 대
   AND G3="여")           : 여자
   AND F3="부산")         : 부산
    OR  F3="울산"          : 울산

정답 : 우선순위 
  20<=E3 AND E3<=29   
   AND G3="여"       
   AND F3="부산"  OR  F3="울산"    

= AND( AND( AND(20<=E3 , E3<=29 ) , G3="여") , OR( F3="부산",  F3="울산" )  )

=OR(AND( AND(AND(20<=E3,  E3<=29), G3="여"), F3="부산"), F3="울산")

 

==:동등하다

&&:AND(교집합)-모든 조건이 충족해야함

||:OR(합집합)-하나의 조건만 충족해도 충분함.

 

//연산자 관계, 논리 연산자
//입력 데이터: 번호 이름 나이 주소 성별
int num =1;
String name = "카리나"; 
int age=22;
String addr="부산";
boolean man=false;

※변수명을 한글(또는 영어 이외의 언어)로 할 경우 인코딩을 utf-8로 바꾸면 에러가 남.

//결과 데이터: 여자
boolean result1;
if(man==true)
	result1=true; //남자
else
    result1=false; //여자

if(man==true) = if(man) 

>>==true는 생략가능

//결과 데이터: 부산사람
		boolean result2;
		
		//if(addr=="부산") //결과는 true지만 틀린 문장
		if(addr.equals("부산")==true) //{}는 여러줄을 묶울때쓴다 ∴한문장일때는 있어도되고 없어도 되고
		    result2=true;
        else
			result2=false;

문자열일 경우에는 add==""를 쓰지않는다.

=>addr.equals("부산")-중요
    addr.compareTo("부산")==0

//결과 데이터: 성년 나이>=19
		boolean result3;
		if(age>=20&&age<=29) 
			result3=true;
		else
			result3=false;

20<=age<=29는 에러가 남.

20<=age&&age<=29 가능

//결과 데이터: 20대 부산여자
		boolean result7;
		if(addr.equals("부산"))
			if(man==false)
				if(age>=20&&age<=29) {
					result7=true;
				}else {
					result7=false;
				}
			else {
				result7=false;
			}
		else{
			result7=false;
		}

'if(man==false)'='if(!man)'

 

//결과 데이터: 20대 부산∙울산여자
boolean result8=false;
if(addr.equals("부산")||addr.equals("울산")) {
	if(!man) {
		if(age>=20&&age<=29) {
			result8=true;
		}
	}
}

||를 쓰고 and대신 if안에 if문을 넣는다.

boolean result9=false;
if(!man) {
	if(age>=20&&age<=29) {
		if(addr.equals("부산")) {
			result9=true;
		}
		else if(addr.equals("울산")) {
			result9=true;
		}
	}	
}

||를 안쓰는 방법>>else if를 쓴다.

반응형