AWS 클라우드환경 네이티브 수업 46일차
진행
1. 문자 연산
2. 연산자
3. 조건문
요약
1. 문자 연산
2. 연산자 (증감, 논리부정, 나머지, 삼항)
3. 조건문 (if , switch)
4. Math.random()
문자 연산
연산자
증감 연산자 ( ++ , -- )
a = 5;
b = 5;
a = a + b++ ; // b가 먼저 계산 되고 그 다음 증감연산자가 계산
결과
a = 10
b = 6
a = a + ++b ; // 증감연산자가 먼저 계산 되고 그 다음 b 연산
결과
a = 11
b = 6
논리 부정 연산자 ( ! )
boolean power = true ;
power = !power ; // !는 부정을 한다.
결과
power = false
나머지 연산자 ( % )
나눈 나머지를 반환한다.
package LectureExam;
public class OperationExample {
public static void main(String[] args) {
int share = 10 / 8;
int remain = 10 % 8 ;
System.out.println("10/8의 나눈 몫 = " + share + ", 나머지 = " + remain);
}
}
결과
10/8의 나눈 몫 = 1, 나머지 = 2
삼항 연산자
구조는 아래와 같다.
조건 ? 조건이 참일 경우 값 : 조건이 거짓일 경우 값
조건이 처리되면 처리된 값은 boolean 상태로 판별을 위해 넘어가게 된다.
그리고 삼항 연산자는 중첩 사용이 가능하다.
중요한 한가지, 삼항연산자는 항상 값을 반환한다.
if 문과 비슷하지만 이 점이 다르다.
아래는 예시이다.
package LectureExam;
public class OperationExample {
public static void main(String[] args) {
int num = 10 ;
String a = num>0 ? "양수당" : "음수당" ;
System.out.println(a);
num = 0 ; // 0으로 바꿔서 중첩 사용을 강제해보자!
String b = num>=0 ? (num == 0 ? "0이당" : "양수당") : "음수당" ;
System.out.println(b);
}
}
결과
양수당
0이당
package LectureExam;
public class OperationExample {
public static void main(String[] args) {
int apples = 134 ; // 사과의 갯수
int bucket = 10 ; // 바구니가 수용할 수 있는 사과갯수
int b = apples%bucket <= 0 ? 0 : 1 ;
int a = apples/bucket + b ;
System.out.println("필요한 바구니의 갯수는 " + a);
}
}
결과
필요한 바구니의 갯수는 14
조건문
if 조건문
구조는 아래와 같다.
위부터 순서대로 조건확인이 진행되기 때문에 순서가 중요하다.
if(조건문){
내용
} else if(조건문){
내용
} else {
내용
}
package LectureExam;
public class ifExample {
public static void main(String[] args) {
int score = 85 ;
if( score >= 90) {
System.out.println("A입니다. 대기업 가셈.");
} else if (score >= 80){ // score >= 80 && score < 90
System.out.println("B입니다. 선생님 그러다 죽도밥도 안되염");
} else {
System.out.println("C입니다. 일단 취미를 특기로 발전 시키는 방향을 고려해보자");
}
}
}
결과
B입니다. 선생님 그러다 죽도밥도 안되염
switch 조건문
구조는 아래와 같다.
switch(입력변수){
case 입력값1 :
내용;
break;
case 입력값2 :
내용;
break;
default :
내용;
break;
}
예시1
package LectureExam;
public class switchExample {
public static void main(String[] args) {
int score = (int)(Math.random()*10) + 1 ; //1~10 사이 랜덤 수를 만들기 위한 식
switch(score) {
case 10 :
System.out.println("10입니다. Wow");
break;
case 9 :
System.out.println("9입니다. Wow");
break;
case 8 :
System.out.println("8입니다. Wow");
break;
case 7 :
System.out.println("7입니다. Wow");
break;
case 6 :
System.out.println("6입니다. Wow");
break;
case 5 :
System.out.println("5입니다. Wow");
break;
default :
System.out.println("1입니다. Wow");
break;
}
}
}
결과
10입니다. Wow
Math.random() 에 대한 설명은 맨 아래에 첨부해두었다.
예시2
아래의 경우, 100점 만점의 시험 점수를 case로 나눌 때,
case를 100를 써야할 것을 약간의 머리를 써서 10개로 줄인 경우이다. (나누기 10)
package LectureExam;
public class conditionExample {
public static void main(String[] args) {
int score = (int)(Math.random()* 101);
char grade = ' ' ;
switch(score/10) {
case 10 :
case 9 :
grade = 'A' ;
break;
case 8 :
grade = 'B' ;
break;
case 7 :
grade = 'C' ;
break;
case 6 :
grade = 'D' ;
break;
default :
grade = 'F' ;
break;
}
System.out.println("선생님 점수는 " + score + ", 학점은 " + grade + " 입니다.");
}
}
결과
선생님 점수는 90, 학점은 A 입니다.
※ Math.random()
난수를 만드는 함수.
random()은 double타입의 0이상 ~ 1미만까지의 실수를 랜덤으로 뽑아온다.
Math.random에 10, 100 등을 곱하고 (int) 형식으로 바꾸면 여러가지 범위의 수가 가능하다.
위의 예시는 1~10 범위의 수를 만드는 예시.
'코딩수업 > AWS 클라우드환경 네이티브' 카테고리의 다른 글
7/21 자바(Java) break과 continue, 반복문 연습 문제 (0) | 2022.07.21 |
---|---|
7/20 자바(Java) Math.random() 활용, 반복문(for, while, do...while) (0) | 2022.07.20 |
7/18 자바(Java) 강사님 교체 후 첫 수업. 클라이언트와 서버, Java 개념, Java 설치, 변수의 개념, Spring 설치 및 세팅 (2) | 2022.07.18 |
7/12 파이썬 독학 중 (0) | 2022.07.13 |
7/11 파이썬 독학 중 (0) | 2022.07.11 |
댓글