과제 푸니까 11시 반 실화냐.....
시간이 왜케 빨리가지?
집 도착하면 5시고..바로 씻으면 6시...6시에 밥먹고 방 치우면 7시...얼레벌레 컴터에 앉다보니 8시..
낼은 7시에 책상에 앉는다!!!!
글고 오늘 전장연 지하철 시위로 인해 3정거장을 가는데 50분이 걸렸다.....
4호선 시위 4호선 시위 많이는 들어봤지만 직접 경험하니 빡침 ㅜㅜ.. 오늘 일찍 안나왔으면 진짜 완전 대지각...
그나마 좌석에 앉아있어서 망정이지..서서 50분 대기탄 사람들 넘 힘들었을 것 같다
낼도 전장연 시위 걸리면 그냥 빨리 탈주해서 버스타고 사당으로 가는게 좋을 것 같다
과제는 if/switch 문에 대한 문제 총 10개인데
반은 학원에서 풀어왔는데 나머지 반 푸는데 2~3시간 걸렸다 ㅋㅋㅋㅋ
특히 9번 문제는 진짜 얼레벌레 풀었음..
그래도 오늘 배운거 복습해야하는데
내일은 또 대망의 반복문이라구요ㅜㅜ
사실 과제라는게 복습하라는 의미로 주는건데 문제푸는데 급급하고 뭔가 보면서 풀면 실력이 안 늘어날 것 같은? 느낌에 걍 머릿속에 있는 걸로만 풀다보니 시간이 더 오래 걸렸다...
글고 내가 어려워한 문제는 수학적 사고가 들어가는 부분이라 수포자...인 나에게는 과분한 문제였다.ㅋㅋ큐ㅠㅠ 대가리야 일해라~~~~~~~~~~~~~~~
오늘 배운 거 복습
12시 까지 끝낸다
<제어문>
자바는 일반적으로 코드가 있으면 위에서 아래로 순차적으로 진행하는데
if 문 같은 제어문으로 이 순차적인 흐름을 바꿀 수 있다, 제어가 가능하다 해서 제어문
이 제어문안에는 조건문 / 반복문 / 분기문 이 있고
선택적으로 실행시키고자할때는 조건문
반복적으로 실행시키고자할때는 반복문
그 외 흐름 제어에는 분기문을 사용한다
<조건문>
조건문에는 "조건식"이 붙음
조건식으로 통해 참(true), 거짓(false)를 판단해서 참일경우 그에 해당하는 코드실행을 진행함
이 조건식안에는 비교연산자(크냐,작냐,><=) 논리연산자(&&,||) 을 주로 사용함
포인트! 조건식의 결과는 true/false여야한다
조건문은 크게 if / switch 문으로 나뉜다
If
조건식은 if랑 친하다!!!(핵심****)
1. 단독 if문
if ( 조건식 ) {
.. 실행코드1..
}
=> 만약 조건식이 참(true)일 경우에는 -> 중괄호 블럭 안의 코드 실행
* -> 조건식이 거짓(false)일 경우 -> 중괄호 블럭 안의 코드 무시하고 넘어감
* 거짓일 경우 실행 안하고 블럭 밖을 그냥 빠져나감
2. if - else 문
if (조건식){
......조건식이 참일경우 실행할코드 1...
} else {
...조건식이 false일때 실행할코드 2....
}
조건에 맞지않은디 하면 무족권 else문 실행
* 즉 실행하면 무족건 한개는 실행됨
조건식의 결과가 참(true)일 경우 실행코드 1 수행 후 if - else문 빠져나감
* 단, 결과가 거짓(false)일 경우 무조건 실행코드 2 를 수행한다
3. if - else if - else 문
3개 이상의 결과를 두고 싶을때
if ( 조건식1 ) {
* ..조건식1이 참이라면 실행할코드1.. *
} else if ( 조건식2 ) {
* ..조건식2가 참이라면 실행할코드2.. *
} else if ( 조건식3 ) {
//조건을 또 걸고싶으면 또걸면됨 *
} else {
//조건식 다 안맞으면 이거 실행하라고 디폴트로해주는거
* 위의 조건들이 다 false일 경우 실행할코드 * }]
-> 마지막 else 는 생략이 가능, 안써도 에러안남, 무족권한개의 출력문을 가져가고 싶다하면 else를 쓴다~ *
if에서 조건을 걸때
(a == b) 처럼 a와 b가 같을 때 같은 경우
기본형 타입끼리 == 비교는 되지만 String 변수로는 비교불가~!
문자열.eqauls(비교문자열)
형태로 비교해야 제대로 올바른 결과가 나옴!
조건문 중첩
if문 안에 if문 쓰기
Scanner sc = new Scanner(System.in);
System.out.println("정수 입력(양수만) : ");
int num = sc.nextInt();
if(num>0) { //양수일경우 (num이 0보다 크냐..)
if(num%2==0) { //(양수이고) 짝수일 경우
System.out.println("짝수입니다.");
}else {//(양수이고) 홀수일 경우
System.out.println("홀수입니다.");
}
}else { //양수가 아닐 경우
System.out.println("양수가 아닙니다. 잘못 입력 했음");
}
}
if문 끝나고
Switch 문
<Switch문>
스위치문도 같은 조건문임
if문과의 차이점이라면
if문은 조건식을 제약없이 자유롭게 (true,false만나온다면) 기술 할 수 있지만,
스위치문은 동등비교로 밖에 수행이 되지 않는다~~~
if문은 자기거 실행하고 알아서 바로 구문을 빠져나가지만 스위치문은 break; 를 걸어줘야한다. 그렇지않으면 아래의 문장들까지 그대로 실행한다
switch (이제부터 동등비교할 대상) {
case 값1 : 값1과 대상이 같을때 실행할 실행코드1; break; (break달아야함,안하면 다 출력됨)
case 값2 : 실행코드1; break;
* .... *
[ default : 위의 값들과 모두 일치하지 않을경우 실행할코드; ] -> 생략가능
스위치문으로 쓴거를 if문으로 모두 변경 가능하지만
if 쓴거를 스위치로 못 바꾸는 것들이 있음
Scanner sc = new Scanner(System.in);
//나는과일가게 장수, 과일을 입력받으면 가격이 얼마야~~~ 라고 출력하고싶음
System.out.print("구매하고자 하는 과일(사과,바나나,복숭아) 입력 : ");
String fruit = sc.nextLine();
int price = 0; //변수 선언하고 초기화하는 습관을 들이쟈.
switch (fruit) { //스위치문은 (값) 이고 ==는 아니니 equals 안써도됨
case "사과" :
price = 1000; //사과를 입력하면 price변수에 천원을 넣을것임
break;
case "바나나" :
price = 2000;
break;
case "복숭아" :
price = 3000;
break;
default :
System.out.println("해당과일은 품절되었습니다");
/*break;
* 구매하고자 하는 과일(사과,바나나,복숭아) 입력 : 수박
해당과일은 품절되었습니다
수박의 가격은 0원 입니다.
*/
return; //아래의 가격 출력문 안나옴
//해당 메소드 전체(method2)를 빠져나가는 구문
}
//xx의 가격은 xxx원입니다
System.out.println(fruit+"의 가격은 "+price+"원 입니다.");
'국비수업' 카테고리의 다른 글
[국비 Java 8일차] 중첩 for문 별찍기, while문, continue, break (0) | 2022.10.27 |
---|---|
[국비 Java 7일차] for문 뽀개기 구구절절 설명충 (1) | 2022.10.26 |
[국비 Java 5일차] 복합대입연산자, 삼항연산자 (0) | 2022.10.24 |
[국비 Java 4일차] 연산자 (0) | 2022.10.21 |
[국비 Java 3일차] 과제 코드리뷰 / printf() 메소드/ 강제 자동 형변환 (0) | 2022.10.20 |