개발 공부 기록
[java실습문제] 연산자 본문
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 |