일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- sql developer
- Bootstrap
- distinct
- HTML
- 답변형 게시판
- alias
- ||
- HTTP Status 500
- 부트스트랩
- Oracle DB
- group by
- github
- tomcat
- 모조칼럼
- 성적프로그램
- JavaScript
- rownum
- 한글 인코딩
- 제약조건
- 이클립스
- jQuery
- JSP
- Oracle SQL
- SQL
- CRUD
- oracle
- git
- 과정평가형
- HTTP Status 404
- Java
초급의 끄적거림
[JAVA] 연산자 연습 (산술, 비교, 논리 연산자) 본문
[연산자]
⊙ 이식성이 풍부하다
⊙ 종류 : 산술, 비교, 논리
⊙ 연산자 우선 순위 : 산술 > 비교 > 논리
- 최우선 연산자 : ( ) 괄호
- 후순위 연산자 : =
1) 산술 연산자
System.out.println(3+5-8); //0
System.out.println(2/4*6); //0 → 2 나누기 4는 0이고 0*6 = 0
System.out.println(1+3/5); //1 → 3나누기 5는 0이고 1+0=1
System.out.println(5%3); //2 → %는 나머지를 구하는 연산자
System.out.println(3%5); //3
/ |
나누었을 때 몫을 구하는 연산자 |
% |
나누었을 때 나머지를 구하는 연산자 |
2) 비교(관계) 연산자
⊙ boolean 형으로 결과값이 반환된다. (true/false 두 가지 중 하나로 답이 나옴)
System.out.println(5<3); //false
System.out.println(5>3); //true
System.out.println(5<=3); //false
System.out.println(5>=3); //true
System.out.println(5==3); //false
System.out.println(5!=3); //false
A == B |
A와 B가 같다 |
A != B |
A는 B와 같지 않다 |
문1) 임의의 정수가 짝수(2로 나눠서 나머지가 0인 수)인지 확인하시오
- 결과 : true
int a = 4;
System.out.println(a%2==0); //2로 나누면 나머지는 0과 1만 가능.
System.out.println(a%2!=1);
문2) 해당년도가 윤년인지 확인하시오 (제대로 배우지 않고 간단히 하는 경우)
- 결과 : false
int y 2019;
System.out.println(y%4==0);
※ 제대로 배운 경우 (https://ninearies.tistory.com/42 참고)
int y=2019; String leap=(y%4==0 && y%100!=0 || y%400==0) ? "윤년" : "평년";
System.out.println(y+"년 :"+leap);
문3) 임의의 문자가 'R'인지 확인하시오
- 결과 : false
char ch='r';
System.out.println(ch=='R');
문4) 지폐 개수를 구하시오
- 결과 : 만원 4장, 천원 5장, 백원 6개, 십원 3개
⊙ 방법1>
int money=45630;
System.out.println("만원" + money/10000 + '장');
System.out.println("천원" + money%10000/1000 + '장');
System.out.println("백원" + money%10000%1000/100 + '개');
System.out.println("십원" + money%10000%1000%100/10+ '개');
⊙ 방법2>
int money = 45630;
int m, c, b, s;
m= money/10000;
money=money%10000;
c=money/1000;
money=money%1000;
b=money/100;
money=money%100;
s=money/10;
System.out.println("만원"+m+"장");
System.out.println("천원"+c+"장");
System.out.println("십원"+b+"개");
System.out.println("백원"+s+"개");
3) 논리연산자
⊙ 1개 이상의 조건을 전체적으로 판단
⊙ boolean 형으로 결과값 반환 (true / false)
⊙ AND, OR, NOT
AND 연산 (논리곱) |
&& 그리고, ~이면서 주어진 조건이 모두 참이면 전체판단 참 주어진 조건이 하나라도 거짓이면 전체판단 거짓 |
문제1) 임의의 정수가 2의 배수이면서 5의 배수인지를 확인하시오
int a=5;
//방법1>
System.out.println((a%2==0) && (a%5==0));
//방법2>
System.out.println(a%10==0);
OR 연산 (논리합) |
|| 또는, ~이거나 주어진 조건이 하나라도 참이면 전체판단 참 |
문제2) 임의의 문자가 알파벳 'R', 'r'인지 확인하시오
char ch='R';
System.out.println((ch=='R') || (ch=='r'));
NOT 부정연산자 |
! 아니라면 |
boolean flag=false;
System.out.println(flag); //false
System.out.println(!flag); //true
'JAVA' 카테고리의 다른 글
[JAVA] if 문, switch문 (+ 연습문제) (0) | 2019.08.19 |
---|---|
[JAVA] bit 연산자 (비트곱, 비트합), shift연산자, 보수 (0) | 2019.08.19 |
[JAVA] 연습문제 (0) | 2019.08.19 |
[JAVA] 삼항연산자, 대입연산자 (0) | 2019.08.19 |
[JAVA] 자료형 변환 Datatype Conversion (자동형, 강제형 변환, 아스키 코드) (0) | 2019.08.19 |