개발 공부 기록

[java실습문제] 연산자 본문

실습 문제/java

[java실습문제] 연산자

좨랭이 2021. 9. 9. 01:43
package com.kh.operator.practice;

import java.util.Scanner;

public class OperatorPractice {
	public void method1() {
		int iNum = 0;
		String result = "";
		Scanner scanner = new Scanner(System.in);
		
		System.out.print("정수 : ");
		iNum = scanner.nextInt();
		
		result = (iNum > 0)? "양수다" : "양수가 아니다";
		
		System.out.println(result);
	}

<삼항연산자>

  [표현식]

   조건식? 식1(참) : 식2(거짓);

  - 피연산자가 3개

  - 조건식은 주로 비교, 논리연산자 사용 (조건식은 반드시 true나 false가 나와야한다.)

  - 삼항 연산자는 중첩으로 사용이 가능하지만 가독성에 문제가 될 수 있기 때문에 상황에 따라서 적절하게 사용해야 한다.

public void method2() {
		int iNum = 0;
		String result = "";
		Scanner scanner = new Scanner(System.in);
		
		System.out.print("정수 : ");
		iNum = scanner.nextInt();
		
		result = (iNum > 0)? "양수다" : (iNum <0)? "음수다" : "0이다" ;
		
		System.out.println(result);
	}

삼항연산자 중첩 가능!

public void method3() {
		int num = 0;
		String result = "";
		Scanner scanner = new Scanner(System.in);
		
		System.out.println("정수 : ");
		num = scanner.nextInt();
		
		result = (num % 2 == 0)? "짝수다" : "홀수다";
		
		System.out.println(result);
	}
public void method4() {
		int people = 0;
		int candy = 0;
//		int person1 = 0;
//		int candy1 = 0;
		Scanner scanner = new Scanner(System.in);
		
		System.out.print("인원 수 : ");
		people = scanner.nextInt();
		
		System.out.print("사탕 개수 : ");
		candy = scanner.nextInt();
		
//		person1 = candy / people;
//		candy1 = candy % people;
		
//		System.out.println("1인당 사탕 개수 : " + person1);
//		System.out.println("남는사탕 개수 : " + candy1);
		System.out.println("1인당 사탕 개수 : " + (candy / people));
		System.out.println("남는사탕 개수 : " + (candy % people));
	}

- 나는 인당 사탕 개수, 남는 사탕 개수 결과값에 대한 변수를 만들어 놓았다. 

- 최대한 단순?하게  => 유지보수가 편하도록!!!! 

public void method5() {
		int age = 0;
		String result = "";
		Scanner scanner = new Scanner(System.in);
		
		System.out.print("나이 : ");
		age = scanner.nextInt();
		
		result = (age <= 13)? "어린이" : (age > 19)? "성인" : "청소년"; 
		
		System.out.println(result);
	}
public void method6() {
		int num1 = 0;
		int num2 = 0;
		int num3 = 0;
//		String result = "";
		boolean isTrue = false;
		
		Scanner scanner = new Scanner(System.in);
		
		System.out.print("입력1 : ");
		num1 = scanner.nextInt();
		
		System.out.print("입력2 : ");
		num2 = scanner.nextInt();
		
		System.out.print("입력3 : ");
		num3 = scanner.nextInt();
		
//		result = (num1 == num2 == num3)? true : false;
//		result = (num1 == num2) && (num2 == num3);
		isTrue = (num1 == num2) && (num2 == num3);
			
		System.out.println(isTrue);
	}

결과값이 true나 false로 나와야 하는 경우 자료형 boolean!!

-> 결과값에 따른 변수의 자료형을 잘 설정하자~

 

<논리연산자>

  - 두개의 논리값을 연산하는 연산자

  - &&(AND) : 왼쪽, 오른쪽 피연산자 모두 true일 경우 참(true)  // 곱하기
                   true && true => true
                   true && false => false
                   false && true => false
                   false && false => false

  - ||(OR)  : 왼쪽, 오른쪽 피연산자 중에 하나라도 true일 경우 참(true)  // 더하기

               true || true => true
               true || false => true
               false || true => true
               false || false => false

'실습 문제 > java' 카테고리의 다른 글

[java실습문제] 반복문 for, while  (0) 2021.09.21
[java실습문제] 조건문 if, switch  (0) 2021.09.11
[java실습문제] 형변환  (0) 2021.09.08
[java실습문제] 변수 Scanner  (0) 2021.09.08