1. if문과 else if문
- if(조건식) {
조건식이 true일 때 수행할 코드
} else {
조건식이 ture가 아닌 모든 경우일 때 수행할 코드
}
- if(조건식) {
조건식이 true일 때 수행할 코드
} else if(조건식) {
조건식이 true일 때 수행할 코드
* else if문은 하나라도 만족하면 나머지 if문은 더이상 처리(수행)하지 않는다
}
코드 예제1)
코드 예제2)
코드 예제3)
1-1. Scanner로 입력을 받아 if문과 else if문 사용하기
2. switch문
- switch문 선언형식
* key : 변수, 수식, 정수, 문자열
* value : 리터럴(값), 변수 사용 X
switch (key) {
case value:
break;
case value:
break;
:
:
[default:] > 생략 가능 구문
break;
* case문 사이에 break문이 없으면 다시 그 다음 case문을 수행!
코드 예제1)
- 정수를 입력받아서 홀수, 짝수 출력하기
아래와 같이 두 개의 case로 나눌 수도 있고 홀수, 짝수는 case 경우가 2가지이므로,
case2를 삭제하고 default를 사용할 수 있다.
3. for문
- for문 형식
for (초기식; 조건식; 증감식) {
}
코드 예제1)
위의 for문을 조금 자세히 파헤쳐보면
for ( 초기식(ㄱ); 조건식(ㄴ); 증감식(ㄷ)) {
} 이라고 볼 때,
초기식을 실행하고 조건식이 true이면 {} 블럭 안에 있는 코드가 수행이 되면서 증감식인 i++가 실행되어 i가 1이 된다.
// ㄱ -> ㄴ(0 < 10) 조건식 true -> {} 블럭 수행 -> ㄷ(1)
// ㄱ -> ㄴ(1 < 10) 조건식 true -> {} 블럭 수행 -> ㄷ(2)
// ㄱ -> ㄴ(2 < 10) 조건식 true -> {} 블럭 수행 -> ㄷ(3)
// ㄱ -> ㄴ(9 < 10) 조건식 true -> {} 블럭 수행 -> ㄷ(10)
// ㄱ -> ㄴ(10 < 10) 조건식 false -> for문 종료
코드 예제2-1)
10 ~ 1까지의 합계 구하기
코드 예제2-2)
코드 예제3)
// 결과 1+2+=3
4. while 문
- while (condition) {
// 조건이 true(참)일동안 반복해서 { } 블럭안에 있는 코드 실행(처리)
}
코드 예제1)
// 헬로우 월드 10번 출력
int i = 1;
while (i <= 10) {
System.out.println("헬로우 월드");
i++;
}
코드 예제2)
4-1. while 문에 증감연산자(++, --)가 사용될 때 결과
코드 예제1)
// 결과 : 2+3+4+5+6+7+8+9+10+11+=65
코드 예제2)
// 결과 : 2+3+4+5+6+7+8+9+10+=54
코드 예제3) 전위형 증감연산자
// 결과 : 2+3+4+5+6+7+8+9+10+11+=55
코드 예제4) 후위형 증감연산자
// 결과 : 1+2+3+4+5+6+7+8+9+10+=55
코드 예제5)
package practice;
public class Pr02 {
public static void main(String[] args) {
int i = 1, sum = 0;
while( i <= 10 ) {
System.out.print(i + "+");
sum += i++; // 1+2+3+4+5+6+7+8+9+10+=55 ( 파악 )
}
System.out.println("=" + sum);
}
}
// 결과 : 1+2+3+4+5+6+7+8+9+10+=55
코드 예제6)
package practice;
public class Pr02 {
public static void main(String[] args) {
int i = 1, sum = 0;
while( i <= 10 ) {
System.out.print(i + "+");
sum += ++i; // 1+2+3+4+5+6+7+8+9+10+=65 ( 파악 )
}
System.out.println("=" + sum);
}
}
// 결과 : 1+2+3+4+5+6+7+8+9+10+=65
4-2. do~while문
- do~while 문은 조건식의 참 거짓을 판단하기 전에 최소한 한 번은 무조건 { } 블럭을 처리 한 후에 조건식을 묻는다.
코드 예제1)
ㄱ. i 값에 9를 입력
// 결과 :
헬로우 월드
헬로우 월드
= end =
ㄴ. i 값에 10을 입력
// 결과 :
헬로우 월드
= end =
ㄷ. i 값에 11을 입력 > 12를 입력해도 동일
// 결과 :
헬로우 월드
= end =
4-3. while문으로 1~10까지 합계 출력하기
코드 예제1) while문과 if문 사용
// 결과 : 1+2+3+4+5+6+7+8+9+10=55
코드 예제2) while문과 삼항연산자 사용
// 결과 : 1+2+3+4+5+6+7+8+9+10=55
코드 예제3)
☞ 참고
- '\b' > 제어문자(back space)
5. 1~10 숫자 중 홀수의 합계 구하기와 continue 문
코드 예제1)
int sum = 0;
for (int i = 1 ; i <= 10 ; i++) {
if(i % 2 != 0) {
sum += i;
System.out.print( i + "+");
}
} System.out.println("=" + sum);
// 결과 : 1+3+5+7+9+=25
코드 예제2)
// 결과 : 1+3+5+7+9+=25
코드 예제3)
// 결과 : 1+3+5+7+9+=25
6. charAt()
- charAt() 메서드는 문자열에서 특정 인덱스를 선택해서 한 글자만 char 형으로 바꿔주는 메소드이다.
- 선언 형식 : charAt(index);
코드 예제1)
String name = "hong gil dong"; // 문자열 길이 13
System.out.println(name.charAt(0)); // h
System.out.println(name.charAt(1)); // o
System.out.println(name.charAt(2)); // n
System.out.println(name.charAt(3)); // g
System.out.println(name.charAt(4)); //
System.out.println(name.charAt(5)); // g
System.out.println(name.charAt(6)); // i
System.out.println(name.charAt(7)); // l
System.out.println(name.charAt(8));
System.out.println(name.charAt(9)); // d
System.out.println(name.charAt(10)); // o
System.out.println(name.charAt(11)); // n
System.out.println(name.charAt(12)); // g
코드 예제2) 코드 예제1을 for문으로 처리하기
코드 예제3)
키보드를 사용해서 한 문자를 입력받아서 ch 변수에 저장을 한 후 대문자, 소문자, 숫자, 한글, 특수문자인지 확인
코드 예제4) 코드 예제3의 if문 조건식을 Character 래퍼클래스 사용하기
☞ 조건식 참고
// 대문자 'A' <= ch && ch <= 'Z'
// 소문자 'a' <= ch && ch <= 'z'
// 숫자 '0' <= ch && ch <= '9'
// 한글 '가' <= ch && ch <= '힣'
// 특수문자( # @ $ & ) '#'==ch || '@'==ch || '$' == ch || '&'==ch
7. Math.random()
- Math.random() 메서드는 0 이상 1 미만의 구간에서 부동소수점의 난수를 반환하는 메서드이다.
코드 예제1) 국어점수를 30개 저장할 배열 선언 후 무작위로 점수 넣기
1) 0 <= 국어점수 <= 100
// 0 <= int 국어점수 <= 100
// 0.0 * 101 <= double random() * 101 < 1.0 * 101
// 0.0 <= Math.random() * 101 < 101.0
// 0 <= (int)(Math.random() * 101) < 101
// 0 <= (int)(Math.random() * 101) <= 100
'TIL > Java' 카테고리의 다른 글
[SIST] Java_days07 (0) | 2022.02.23 |
---|---|
[SIST] Java_days06 (0) | 2022.02.22 |
[Java] 대소문자 구별없이 비교하기 : equalsIgnoreCase() (0) | 2022.02.20 |
[SIST] Java_days04 (0) | 2022.02.18 |
[SIST] Java_days03 (0) | 2022.02.17 |