1.조건문
조건문이란???
특정한 조건을 만족할때와 만족하지 않을 때 수행할 작업을 미리 정하고 조건에 따라 각각 다르게 실행하는 제어문이다.
조건문의 종류
조건문의 종류는 크게는 2가지로 구분할 수 있다.
if문과 switch문이다.
if문은 if문, if else문, else if문,다중 if문 으로 다시 구분할 수 있다.
1 . if문
📋 코드
package chapter04;
import java.util.Scanner;
public class ch04_1 {
public static void main(String[] args) {
int a= 2; //a에 2를 대입
if(a > 3) { //a가 3보다 큰지 대소비교
System.out.println("3는 3보다 큽니다."); // 출력
}
System.out.println("검사가 끝났습니다."); //출력
}
}
📕 해설
if문은 참(True) 또는 거짓(False)로 구분될 수 있다.
위의 코드를 실행할때 int a 값을 3보다 크게 준다면 True 값 즉 if문에 속한 "3는 3보다 큽니다." 가 출력되며
이후 if문을 빠져나가서 "검사가 끝났습니다"가 출력된다.
3보다 작다면 if문이 False 값을 가지게 되므로 if문을 빠져나가며 "검사가 끝났습니다." 만 출력된다.
아래는 결과값이다.
👨🏻💻 True
3는 3보다 큽니다.
검사가 끝났습니다.
👨🏻💻 False
검사가 끝났습니다.
2 . if-else문
if-else문은 if문에서 조건식이 false일때 실행하는 부분이다.
📋 코드
package chapter04;
import java.util.Scanner;
public class ch04_2 {
public static void main(String[] args) {
System.out.println("나이를 입력해주세요!");
Scanner sc = new Scanner(System.in); //System.in은 키보드
int age;
age = sc.nextInt();
if(age > 19) {
System.out.println("성인입니다");
System.out.println("성인요금이 적용됩니다.");
}
else{
System.out.println("청소년입니다");
System.out.println("청소년 요금이 적용됩니다.");
}
System.out.println("결제를 진행해주세요.");
}
}
📕 해설
System.out.println("나이를 입력해주세요!");
Scanner sc = new Scanner(System.in);
int age;
age = sc.nextInt();
위 코드에서는 int값을 고정으로 주지않고 키보드로 입력하여 age 값을 동적으로 제어할 수 있게 하였다.
참고로 사용하기 전
import java.util.Scanner;
를 추가하여 Scanner 를 미리 추가해야한다.
👨🏻💻 True
나이를 입력해주세요!
20
성인입니다
성인요금이 적용됩니다.
결제를 진행해주세요.
👨🏻💻 False
나이를 입력해주세요!
5
청소년입니다
청소년 요금이 적용됩니다.
결제를 진행해주세요.
3 . if-else if문
if-else if 문은 조건이 여러가지일 경우 사용한다.
📋 코드
package chapter04;
import java.util.Scanner;
public class ch04_3 {
public static void main(String[] args) {
System.out.println("나이를 입력해주세요!"); // 구문 출력
int age; // 변수 지정
Scanner sc = new Scanner(System.in); // sc 변수에 Scanner 클래스 지정
age = sc.nextInt();
if(age > 19) {
System.out.println("성인입니다.");
System.out.println("성인 요금이 적용됩니다.");
}
else if(age > 13) {
System.out.println("청소년입니다.");
System.out.println("청소년 요금이 적용됩니다.");
}
else if(age > 8) {
System.out.println("어린이입니다.");
System.out.println("어린이 요금이 적용됩니다.");
}
else {
System.out.println("유아입니다.");
System.out.println("유아 요금이 적용됩니다.");
}
}
}
📕 해설
if-else 와 크게 다를건 없지만 조건을 여러개로 만들 수 있다.
위 코드에서 String은 문자열 Char 와 비슷하며 코드에는 사용하지 않았지만
new Scanner(System.in); 는 스캐너 주소를 생성하며 Interger.parselnt 는 문자를 숫자로 변환할 수 있다.
👨🏻💻 조건 1
나이를 입력해주세요!
20
성인입니다.
성인 요금이 적용됩니다.
👨🏻💻 조건 2
나이를 입력해주세요!
15
청소년입니다.
청소년 요금이 적용됩니다.
👨🏻💻 조건 3
나이를 입력해주세요!
9
어린이입니다.
어린이 요금이 적용됩니다.
👨🏻💻 나머지
나이를 입력해주세요!
5
유아입니다.
유아 요금이 적용됩니다.
4 . 중첩 if문
중첩 if문은 if문 안에 또 다른 if문을 다시 중첩해서 사용할 수 있다.
📋 코드
package chapter04;
import java.util.Scanner;
public class ch04_4
{
public static void main(String[] args)
{
System.out.print("아이디를 입력하세요");
String id = "";
String pw = "";
Scanner L = new Scanner(System.in);
id = L.nextLine();
if(id.equals("naver"))
{
System.out.println("ID가 일치합니다");
System.out.println("PW를 입력하세요");
pw = L.nextLine();
if(pw.equals("google"))
{
System.out.println("PW가 일치합니다");
System.out.println("로그인 성공");
}
else
System.out.print("PW 불일치");
}
else
System.out.print("ID 불일치");
}
}
📕 해설
equals는 지정한 변수와 값이 같은지 확인하고 같다면 if문을 실행한다.
naver을 입력했을때 if구문이 실행되며 google를 입력했을때 중첩 if문이 실행된다.
Scanner 에서 nextLine();은 문자를 표현할 수 있고 nextInt();는 숫자를 표현한다.
👨🏻💻 True
아이디를 입력하세요
naver
ID가 일치합니다
PW를 입력하세요
google
PW가 일치합니다
로그인 성공
👨🏻💻 false
아이디를 입력하세요
daum
ID 불일치
👨🏻💻 false
아이디를 입력하세요
naver
ID가 일치합니다
PW를 입력하세요
daum
PW 불일치
5 . Switch문
if문은 범위를 지정하여 값을 찾는거라면 Switch문은 같은 값을 찾아 비교적 빠른속도로 데이터를 찾아낼 수 있다.
📋 코드
package chapter04;
public class ch04_5 {
public static void main(String[] args) {
int book = 30;
book = book / 10;
switch(book) {
//10권 미만
case 0:
System.out.println("조금 더 노력하세요!");
break;
//10권 이상 20권 미만
case 1:
System.out.println("책 읽는 것을 즐기시는 분이시네요!!");
break;
//20권 이상 30권 미만
case 2:
System.out.println("책을 사랑하시는분이시네요!!");
break;
//30권 이상
default:
System.out.println("당신은 다독왕입니다!!");
break;
}
}
}
📕 해설
2를 10으로 나눴을 때 몫이 0이라면 case 0 이 실행된다.
case 를 사용할 때 ""를 사용하여 문자열로도 찾을 수 있으며 case문에 break가 없다면 모든 코드가 실행되므로
각 case가 끝날때마다 break로 스위치문을 빠져나가게 해주어야한다.
👨🏻💻 book = 5
조금 더 노력하세요!
👨🏻💻 book = 15
읽는 것을 즐기시는 분이시네요!!
👨🏻💻 book = 25
책을 사랑하시는분이시네요!!
👨🏻💻 book = 35
당신은 다독왕입니다!!
2.반복문
반복문은 특정 작업을 반복적으로 수행할때 사용한다.
1 . for문
for문은 특정한 횟수의 작업을 반복하고자 할 때 사용하는 반복문이며. 다음과 같이 이루어져 있다.
for( 초기화; 조건식; 증감식) {
System.out.println("조건식이 참일 때 실행되는 부분");
}
📋 코드
package chapter04;
import java.util.Scanner;
public class ch04_6
{
public static void main(String[] args)
{
System.out.println("단수");
int dan;
Scanner k = new Scanner(System.in);
dan = k.nextInt();
for(int i=0; i < 10; i++)
{
System.out.println(dan+"X"+i+"="+(dan*i));
}
}
}
📕 해설
위의 코드는 구구단을 구현하기 위한 코드이며 단을 입력하면 작동한다.
또한 for문안에 있는 코드는 다음과 같은 순서로 작동한다.
1 . int i=0
2 . i < 10
3 . System.out.println(dan+"X"+i+"="+(dan*i));
4 . i++
5 . i < 10
6 . System.out.println(dan+"X"+i+"="+(dan*i));
7 . i++
8 . i < 10
9 . System.out.println(dan+"X"+i+"="+(dan*i));
10 . i++
.
.
.
👨🏻💻 결과
단수
2
2X0=0
2X1=2
2X2=4
2X3=6
2X4=8
2X5=10
2X6=12
2X7=14
2X8=16
2X9=18
'Java > 단계별 과정' 카테고리의 다른 글
[JAVA] 상속과 다형성 (0) | 2023.05.01 |
---|---|
[JAVA]자바 기본 총정리 (0) | 2023.04.25 |
[JAVA]오버로딩과 생성자 (0) | 2023.04.25 |
[JAVA] 배열과 클래스 객체지향 (1) | 2023.04.21 |
[JAVA] 자바 프로그래밍의 기본 (0) | 2023.04.18 |