학습할 것 (필수)
- 선택문
- 반복문
A.선택문 : 특정 조건에서 특정 코드만을 실행 할 수 있게 해줍니다.
1. if 문
if(조건){
조건을 만족하면 실행할코드
}
boolean 자료형 : 논리 자료형으로 참과 거짓을 나타낼 때 쓰는 자료형
2. if - else문
조건을 만족할 경우와 만족하지 않을경우 모두 코드를 실행하고 싶은 경우 자주 사용됩니다.
3. 중첩 if 문
조건을 여러 가지로 나누고 싶을경우 else if를 사용하여 조건을 추가해 줍니다.
위 세 가지 선택문의 이해를 돕기 위해 홀수와 짝수를 판별하는 프로그램을 작성해 보면,
public class ex_001{
public static void main(String[] args) {
int x = 5;
if (x % 2 == 0){//x를 2로 나눈 나머지가 0이면 짝수가 된다
System.out.println("x는 짝수입니다.");
}else{
System.out.println("x는 짝수가 아닙니다.");
}
}
}
이렇게 코드를 작성하면 int x가 짝수가 아니라는 정보밖에 인식 할 수 없습니다.
코드를 작성하다가 x 가 홀수 인지 판단하고 싶어졌다면 아래와 같이 코드를 작성할 수 있습니다.
public class ex_002 {
public static void main(String[] args) {
int x = 5;
if(x % 2 == 0){
System.out.println("x는 짝수입니다.");
}else if(x % 2 == 1){
System.out.println("x는 홀수 입니다.");
}else{// x가 짝수도 아니고, 홀수도 아니라면
System.out.println("짝수도, 홀수도아닙니다");
}
}
}
이렇게 코드를 작성하면 x에 대한 정보를 ex_001예제보다 자세히 알 수 있습니다.
조건문에서 주의 할 점:
코드를 위에서부터 읽기 때문에 먼저 만족한 조건의 코드만 실행하게 됩니다.
4. Switch/case 문
switch(변수){
case 값1:
//변수가 값1일떄 수행할 코드
break;
case 값2:
//변수가 값2일 때 수행할 코드
break;
deafult:
//case값에 만족하는 것이 없을 때 수행할 코드
}
public class ex_003 {
public static void main(String[] args) {
String menu = "Americano";
switch(menu){
case "Americano":
System.out.println("4100원 입니다");
break;
case "Latte":
System.out.println("4600원 입니다.");
break;
case "Cappuccino":
System.out.println("4700원 입니다");
break;
default:
System.out.println("죄송하지만, 없는 메뉴입니다!");
}
}
}
switch case문에서는 위에서부터 아래까지 쭉 실행시키므로 조건에 만족하면 break를 삽입해서 뺴줘야 합니다.
그렇지 않으면 모든 케이스들을 비교합니다.
B. 반복문 : 특정한 명령을 반복적으로 수행합니다.
1. for문
for( 초기값; 조건문; 증가치){
//반복하여 수행할 코드
}
for(int i = 0 ; i < 10 ; i++){
System.out.println(i);// 출력값 0,1,2,3,4,5,6,7,8,9
}
2. for-each문
for( 배열 안의 인자 타입, 배열){반복하여 실행할 코드}
가변하는 복잡한 배열이나 리스트의 크기를 구할 필요가 없습니다.
public class ex_004 {
public static void main(String[] args) {
int[] arr = {0, 1, 2, 3, 4, 5, 6, 7};
String[] arr2 = {"a", "b", "c", "d"};
for (int i : arr) {
System.out.println(arr[i]);//출력 0,1,2,3,4,5,6,7
}
for (String a : arr2) {
System.out.println(a);// 출력 a,b,c,d
}
}
}
단점 1 - 반복문 내에서 리스트의 값을 추가하거나 변경할 수 없습니다.
단점 2 - 배열을 역순으로 탐색할 수 없습니다.
3. while문
while(조건문){// 조건을 만족할 동안 계속 반복됨
반복적으로 실행할 코드}
**조건을 적절하게 설정해야 한다 그렇지 않으면 무한루프에 빠질 수 있습니다.
public class ex_005 {
public static void main(String[] args) {
int k = 0;
while(k < 10){
System.out.println(k);
k++;
}
}
}// 출력 0,,1, 2, 3, 4, 5, 6, 7, 8, 9
4. do while 문
do{
실행문; }while(조건문);
public class ex_006 {
public static void main(String[] args) {
int i = 200; // 초기값 설정
do {
System.out.println(i); // 조건을 만족하지는 않았지만 한번은 무조건 출력함
} while (i < 100); // 조건식
}
}
break, continue(점프문)
break 문 : 반복문을 빠져나갈 때 사용합니다.
반복문에서 break를 만나면 반복문이 종료됩니다
continue문 : 반복문에서 continue 다음 코드들을 건너 뛰고 다음 반복을 실행할 때 사용합니다.
public class ex_007 {
public static void main(String[] args) {
int[] arr = {1,2,3,4,5,6};
for(int i: arr){
if(i == 1){//i가 1일 경우
System.out.println("1은 출력하지 않습니다!");
continue;// 아래의 코드는 실행하지 않고 다음 인자로 넘어갑니다
}
System.out.println(i);// 출력값: 1은 출력하지 않습니다!,2,3,4,5,6
}
}
}
'Java > Study' 카테고리의 다른 글
[JAVA] 백기선 라이브 스터디 9주차 예외처리 (0) | 2021.01.13 |
---|---|
[JAVA]백기선 라이브 스터디 8주차 (0) | 2021.01.08 |
[Java]백기선 라이브 스터디 7주차 (0) | 2021.01.02 |
[Java] 백기선 라이브 스터디 6주차 과제 (0) | 2020.12.26 |
[JAVA]백기선 자바 스터디 5주차 과제 (0) | 2020.12.19 |