오늘은 다행히도 없었다.
삼항 연산자
// 조건 ? 참 : 거짓
int x = 1;
int y = 9;
boolean b = (x == y) ? true : false;
System.out.println(b);
Objects.equals(좌, 우)
좌 우가 같은 경우 true, 다른 경우 false
If문
if( 조건식. true일 경우 {}안의 내용 실행 ){실행할 문장}
else if(){} : 중복 실행 가능
else{} : 적지 않을 경우 생략
복합 조건 지원
코드 중복 많음
Switch문
switch(피연산자){
case 조건:
조건식;
break;
...
...
...
defalt:
조건식;
}
복합 조건 지원하지 않음(피연산자 1개)
코드 중복 적음
for문
특정 조건에 따라 연산을 반복해서 수행
for(초기값(선언 및 할당); 조건문(이 조건에 도달하기까지 반복); 증가연산){}
향상된 for문
배열을 먼저 선언하고,
왼쪽 변수에 배열을 할당하여 배열 길이만큼 순서대로 반복
int[] numbers = {3, 6, 9, 12, 15};
for (int number : numbers){
System.out.println(number); // 왼쪽 변수에 할당하여 배열을 차례대로 반복
}
구구단을 외자
package week02;
import java.util.Scanner;
public class w17 {
public static void main(String[] args) {
// //입력받는 단을 제외하고 출력
// Scanner sc = new Scanner(System.in);
// int passNum = sc.nextInt(); // 출력을 제외할 구구단수 값
//입력받는 단만 출력
Scanner sc = new Scanner(System.in);
System.out.println("출력할 구구단의 수를 입력해 주세요.");
int selectNum = sc.nextInt();
//구구단
for(int i = 2; i <= 9; i++){ //구구단의 첫번째 수
if (i!=selectNum) {
continue;
}
for (int j = 2; j <= 9; j++){
System.out.println(i+"*"+j+"="+(i*j));
}
}
}
}
어려웠던 것
비트연산자(쉬프트 연산자)
참고 유튜브 강의
문과 출신인데다, 수학을 안 한지 오래 되어서 비트만 나오면 잘 이해가 안 간다.
특히 >>오른쪽 쉬프트로 밀었을 때 1011 -> 1110 이렇게 되는 부분...
나중에 더 공부해봐야겠다.
기본 중의 기본이지만... 머릿속에 잘 안 남는다.
관련된 예제를 많이 따라 써 보거나 문제를 풀면서 익혀야 할 것 같다.
조건문 : if
반복문 : switch, for, while
반복문의 차이는 알겠는데, 왜 이런 다양한 반복문이 생겼는지 체감이 안 되니까 외워지지가 않는듯...
그리고 다음 주 주말에는 더 길게 공부하자
아자아자