04_java 비교, 논리, 삼항 연산자

2022. 9. 7. 12:22·자바/calcu

안녕하세요

오늘은 이전 시간에 다뤘던 대입 연산자 증감 연산자 이후에

 

03_java 대입, 증감 연산자

안녕하세요 오늘은 이전 시간에 다뤘던 연산자의 종류 이후에 02_java 연산자의 종류 안녕하세요 오늘은 이전 시간에 다뤘던 자바의 연산자와 연산식 이후에 01_java 연산자와 연산식 안녕하세요

dduldduck.tistory.com

자바의 비교, 논리, 삼항 연산자에 대해 알아보겠습니다.

 


package javaexp.a03_calcu;

public class A05_Calcu_equal {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		/*
		# 비교연산자
		1. 두개의 피연산자의 값을 비교하여 동일한지(==),
		같지 않은지(!=), 큰지(>), 작은지(<) 를 boolean
		값은 true/false  값으로 결과를 처리하는 연산자를 말한다.
		2. 종류
			==, !=, >, <, >=, <=
		3. 활용
			boolean에 할당하거나, 조건식 if(비교연산자), while(비교연산자)
			를 통하여 활용한다.
			
		 */
		int num01 = 25;
		int num02 = 5;
		System.out.println("#비교 연산 결과");
		System.out.println(num01+" == "+num02+" = "+(num01==num02));
		System.out.println(num01+" != "+num02+" = "+(num01!=num02));
		System.out.println(num01+" > "+num02+" = "+(num01>num02));
		System.out.println(num01+" < "+num02+" = "+(num01<num02));
		System.out.println(num01+" >= "+num02+" = "+(num01>=num02));
		System.out.println(num01+" <= "+num02+" = "+(num01<=num02));
		
		boolean isEqual = num01 == num02;
		System.out.println("같은지 여부:"+isEqual);
		if( isEqual ) {
			System.out.println("동일합니다(조건식1)");
		}else {
			System.out.println("동일합니다(조건식2");
		}while(num01!=num02) {
			num02++;
			System.out.println(num01+":"+num02);
		}
		// ex1) 획득 점수를 변수로 선언하고, 합격기준 점수도 변수를 선언하여
		//		합격 여부를 boolean값으로 아래 형식으로 출력하세요
		//		획득 점수: @@@, 합격 기준 점수 : @@, 합격 여부 : true/false
		// ex2) 4지 선다에서 check한 번호 선언, 정답번호 선언
		//		정답여부를 출력
		int score01=150;
		int pass01=200;
		boolean ispass = score01>=pass01;
		System.out.println("획득 점수: "+score01+", 기준 점수 : "+pass01+", 합격여부 : "+ispass);
		int check01=1;
		int dob=1;
		boolean isCorrect = check01==dob;
		System.out.println("체크한 번호: "+check01);
		System.out.println("정답번호: "+ dob);
		System.out.println("정답여부: "+(isCorrect));
		
		
		
		}
	}

# 비교연산자
1. 두개의 피연산자의 값을 비교하여 동일한지(==),
같지 않은지(!=), 큰지(>), 작은지(<) 를 boolean
값은 true/false  값으로 결과를 처리하는 연산자를 말한다.
2. 종류
==, !=, >, <, >=, <=
3. 활용
boolean에 할당하거나, 조건식 if(비교연산자), while(비교연산자)
를 통하여 활용한다.


package javaexp.a03_calcu;

public class A06_Calcu_Logical {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		/*
		# 논리연산자
		1. 비교연산자나 boolean (true false)값이 나오면 그것에
		의해서 and(논리합), or (논리곱)에 의해 결과를 혼합해서 처리할 때
		필요한 연산자를 말한다.
		2. 형식
			비교연산자1 && 비교연산자2
				두개의 비교연산식이 모두가 true일 때, true로
				처리 되는 것을 말한다.
				ex) 국어점수와 영어점수가 모두 80점 이상일 때,
				합격인 경우를 처리할 때 활용된다.
			비교연산자1 || 비교연산자2
				두개의 비교연산식 중 하나만 true일 때, true이고,
				모두 다 false일 때는 false일 경우에 필요한
				논리 연산자이다.
				ex) 국어, 영어, 수학 점수가 하나라도 80점 이상이면
				합격인 경우를 처리할 때, 활용된다.
				kor>=80 || eng>=80 || math>=80
			cf) &, &&
				|, ||
				차이는 두개가 있으면 논리식이 합당치 않으면 두번째 비교연산식에
				처리를 방지해준다.
				비교연산식1 && 비교연산식2 의 경우, 비교연산식1이 false이면
					비교연산식2로 프로세스를 처리하는 것을 방지한다..
				비교연산식1 || 비교연산식2 의 경우, 비교연산식1이 true이면
					비교연산식2로 프로세스를 처리하는 것을 방지한다.
		 */
		int kor = 80;
		int eng = 70;
		int math = 90;
		System.out.println("모두가 80이상일 때 합겨:");
		System.out.println(kor>=80 && eng>=80 && math>=80);
		System.out.println("하나라도 80이상이면 합격:");
		System.out.println(kor>=80 || eng>=80 || math>=80);
		
		// ex1) 구매한 물건 (사과, 바나나, 딸기)가 모두가 2000원 이상이면 vip고객 여부를 true
		// ex2) 위 구매물건에서 갯수를 각각 처리하여 총비용이 5000이상인 것이 있으면
		//		할인대상 고객여부 true
		int apple = 1500;
		int banana = 3000;
		int berry = 4000;
		boolean vip = apple>=2000 && banana>=2000 && berry>=2000;
		System.out.println("사과 구매가격: "+apple);
		System.out.println("바나나 구매가격: "+banana);
		System.out.println("딸기 구매가격: "+berry);
		System.out.println("vip 고객여부: "+ vip);
		int appcnt = 3;
		int banacnt = 2;
		int berrycnt= 4;
		boolean sale = apple*appcnt>=5000 || banana*banacnt>=5000 || berry*berrycnt>=5000;
		System.out.println("사과 총가격: "+apple*appcnt);
		System.out.println("사과 총가격: "+banana*banacnt);
		System.out.println("사과 총가격: "+berry*berrycnt);
		System.out.println("할인대상 고객여부:"+sale);
		/*
		논리 부정 연산자 : !
				논리 결과값이 true ==> false, false ==> true로 처리하는 논리 연산자 이다.
		 */
		System.out.println("할인대상 고객이 아닌지여부:"+!sale);

	}

}

# 논리연산자


1. 비교연산자나 boolean (true false)값이 나오면 그것에
의해서 and(논리합), or (논리곱)에 의해 결과를 혼합해서 처리할 때
필요한 연산자를 말한다.


2. 형식
비교연산자1 && 비교연산자2
두개의 비교연산식이 모두가 true일 때, true로
처리 되는 것을 말한다.
ex) 국어점수와 영어점수가 모두 80점 이상일 때,
합격인 경우를 처리할 때 활용된다.
비교연산자1 || 비교연산자2
두개의 비교연산식 중 하나만 true일 때, true이고,
모두 다 false일 때는 false일 경우에 필요한
논리 연산자이다.
ex) 국어, 영어, 수학 점수가 하나라도 80점 이상이면
합격인 경우를 처리할 때, 활용된다.
kor>=80 || eng>=80 || math>=80
cf) &, &&
|, ||
차이는 두개가 있으면 논리식이 합당치 않으면 두번째 비교연산식에
처리를 방지해준다.
비교연산식1 && 비교연산식2 의 경우, 비교연산식1이 false이면
비교연산식2로 프로세스를 처리하는 것을 방지한다..
비교연산식1 || 비교연산식2 의 경우, 비교연산식1이 true이면
비교연산식2로 프로세스를 처리하는 것을 방지한다.


package javaexp.a03_calcu;

public class A07_Calcu_Triple {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
/*
 		# 삼항 연산자
 		1. 세 개의 피연산자를 필요로 하는 연산자
 		2. 앞의 조건식 결과에 따라 콜론 앞 뒤의 피연산자 선택
 			==> 조건 연산기
 		3. 형식
 			(비교연산자, 조건연산자) ? true일때 : false일때
 			
 			cf) if else if else if...
 			조건1? 결과1: (조건2?결과2:그외결과)
 */
		int point = 80;
		String result = (point>=70)?"합격":"불합격";
		System.out.println("점수: "+point);
		System.out.println("결과: "+result);
		// ex1) 쇼핑몰에서 구매한 물건의 가격과 갯수를 변수를 설정하여,
		//		총비용이 30000 이상이면 할인대상고객 그렇지 않으면 일반 고객으로 표시하세요.
		// ex2) 위 문제에서 나이는 check 하여 나이가 20미만이면 20% 할인하여 금액을 산정하고,
		//		그렇지 않으면 전체금액을 처리할 때, 최종 금액을 출력하세요.
		//		hint) double discount (할인율은 20% ==> 0.2(실수))
		//			최종금액 = 기본금액 -(기본금액*할인육)
		int clothprice=15000;
		int clothcnt=3;
		double tot = clothprice*clothcnt;
		String result01 = (tot>=30000)?"할인대상고객":"일반고객";
		System.out.println("가격: "+clothprice);
		System.out.println("갯수: "+clothcnt);
		System.out.println(result01);
		
		int age = 19;
		double discount = 0.34134123;
		double discount01= clothprice*clothcnt-clothprice*clothcnt*discount;
		double result02 = (age<20)?clothprice*clothcnt-clothprice*clothcnt*discount:tot;
		System.out.println("최종금액"+result02);	
		


	}

}

  # 삼항 연산자
  1. 세 개의 피연산자를 필요로 하는 연산자
  2. 앞의 조건식 결과에 따라 콜론 앞 뒤의 피연산자 선택
  ==> 조건 연산기
  3. 형식
  (비교연산자, 조건연산자) ? true일때 : false일때
 
  cf) if else if else if...
  조건1? 결과1: (조건2?결과2:그외결과)



이후에는 자바의 코드실행 흐름 및 제어문의 종류 대해 알아보도록 하겠습니다.

 

01_java 코드실행 흐름 및 제어문의 종류

안녕하세요 오늘은 이전 시간에 다뤘던 비교, 논리, 삼항 연산자 이후에 04_java 비교, 논리, 삼항 연산자 안녕하세요 오늘은 이전 시간에 다뤘던 대입 연산자 증감 연산자 이후에 03_java 대입, 증감

dduldduck.tistory.com

 

'자바 > calcu' 카테고리의 다른 글

03_java 대입, 증감 연산자  (0) 2022.09.07
02_java 연산자의 종류  (0) 2022.09.07
01_java 연산자와 연산식  (1) 2022.07.11
'자바/calcu' 카테고리의 다른 글
  • 03_java 대입, 증감 연산자
  • 02_java 연산자의 종류
  • 01_java 연산자와 연산식
뚤떡이
뚤떡이
프로그래밍을 알아가며 저와 함께 성장하는 블로그 입니다
  • 뚤떡이
    뚤떡이의 발개벗긴개발
    뚤떡이
  • 전체
    오늘
    어제
    • 분류 전체보기 (73)
      • Docker (2)
      • 자바 (29)
        • start (10)
        • calcu (4)
        • process (7)
      • 플러터 (1)
      • 알고리즘 (12)
        • 개념 (2)
        • 구현 (5)
        • 백준 (0)
        • 프로그래머스 (5)
      • 이클립스 (4)
        • 초기설정 (4)
      • SQL (5)
      • IT 잡동사니 (10)
      • 개발 관련 (10)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    #electron
    GLPI
    #python #개발일지 #번역 #메모리최적화 #websocket #redis #비동기프로그래밍
    #개발일지
    synology
    #apachesuperset #시놀로지 #db2 #데이터시각화 #기술블로그
    IT자산관리
    윈도우 크롬 원격
    #프로젝트
    개발일지 #프로젝트후기 #gpt4 #번역 #자동화 #python #electron
    시놀로지
    #python
    요구사항 정의서
    크롬 원격 데스크톱
    MAC 크롬 원격
    #번역
    스팸메일 #메일보안 #gophish #it보안 #오픈소스
    크롬 원격
    #자동화
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
뚤떡이
04_java 비교, 논리, 삼항 연산자
상단으로

티스토리툴바