SeSAC 23일차(2023-08-17)
조건문, 반복문, toString(), equals()
조건문
- if 문
- 값이 범위가 있는 수치일 때 적합
- switch 문
- 값이 명확한 수치일 때 적합
- 일반적으로 if 문보다 성능이 더 좋음
- 조건 3개 이상이면 switch 문 쓰는게 좋다. (속도)
- 삼항연산자
- ( 조건 ) ? A(참일 때 반환할 값) : B(거짓일 때 반환할 값); 의 형태
- 논리합, 논리곱
- (조건) || (조건); 의 형태
- 앞 조건에서 true가 나올 경우 뒤 조건의 내용은 실행하지 않음
- (조건) && (조건); 의 형태
- 앞 조건에서 false가 나올 경우 뒤 조건의 내용은 실행하지 않음
- (조건) || (조건); 의 형태
반복문
- for
- for (int i = 0; i < b; i++) { } 의 형태
- for 문에서 a.length 쓸 때 그대로 for 문안에 넣지 말고 b = a.length 같이 변수 안에 값 넣어서 그 변수를 for 문 안에 넣기
- for-each
- for (Object bElement : b) { sout(bElement) } 의 형태
- while
- while(조건문) { } 의 형태
- 조건문은 외부 요인으로 정의
실습
- Project: DateProject
- package: test.date
- Main_class: TestDate
- 내용: 일정관리 프로그램을 위한 날짜를 표현하기 위한 클래스 만들기, 날짜는 연월일(y, m, d)의 값으로 표현
- int y, m, d;
- date 의미
- data type 생성: class Date (1번 데이터 포함)
- 사용
- today
- today.m = 1;
- 디버깅
toString(), equals() 오버라이드
- toString()
- toString() 오버라이드를 해야 print 했을 때 주소값이 나오지 않고 문자열이 출력된다.
@Override
public String toString() {
return year + "-" + month + "-" + day;
}
public void print(){
System.out.println(this);
}
today.print();
=> 2023-8-17 형태로 출력
- equals()
- equals() 오버라이드를 해야 값끼리 비교가 된다.
오늘의 실습 코드
https://github.com/yubin-im/SeSAC/tree/fea8279f21b75a33d808c358eb36412fd74e945c/20230817/test/date
'교육 (Today I Learned) > SeSAC' 카테고리의 다른 글
SeSAC 25일차 / 스레드 (0) | 2023.08.25 |
---|---|
SeSAC 24일차 / 상속, 배열, 컬렉션, 스레드 (0) | 2023.08.25 |
SeSAC 22일차 / 알고리즘 (0) | 2023.08.17 |
SeSAC 21일차 / 미니 프로젝트 (0) | 2023.08.17 |
SeSAC 20일차 / 실습 (0) | 2023.08.13 |