33일차

백엔드를 팝니다·2024년 8월 2일

개발자 수업

목록 보기
24/72

JAVA_(고전)날짜 클래스

Date date = new Date();
System.out.println(date.toString());
System.out.println(date);

// TODO: (고전2) 날짜 를 년/월/일/ 분리해서 출력
Calendar calendar = Calendar.getInstance(); // 카렌더(달력) 객체

// 년/월/일 출력
// 년 상수 : Calendar
// 월 상수 : Calendar
// 일 상수 : Calendar
int y = calendar.get(calendar.YEAR);
int m = calendar.get(calendar.MONTH);
int d = calendar.get(calendar.DAY_OF_MONTH);
System.out.println(y);
System.out.println(m);
System.out.println(d);

//요즘 사용하는 날짜 클래스
LocalDate localDate = LocalDate.now();
System.out.println(localDate);

//TODO: 현재시간
LocalTime localTime = LocalTime.now();
System.out.println(localTime);

//TODO: 날짜 + 시간 동시에 출력

LocalDateTime localDateTime = LocalDateTime.now();
System.out.println(localDateTime);

JAVA_NULL (예외처리=에러처리)

//TODO:예외처리 (==에러처리)
// 자바 에러 발생 ==> 이상한 문자가 나옴 => "시스템 확인중입니다"
// 목적 : 시스템 품질을 높이기 위해 사용함
//TODO: 1) 에러 : null 예외(에러)
//String data = null; //빈공간을 의미
// String date = " "; // 빈문자열을 넣어야함

// TODO: null 에러 발생 :
// System.out.println(data.toString());

JAVA_OUTOFBOUND

// TODO: 에러(예외) : OutOfBound 에러
int[] value = {1,2,3}; // 0 시작
// value[0] = 1, value[1] = 2, value[2] = 3, value[3] = 없음(? 에러)
// System.out.println(value[3]); // ?

JAVA_NumberFormat

//TODO : Number Format 에러 : 숫자로 바꿀 수 없는 바꿀때 발생

String value = "100";
//TODO: 문자열 -> 숫자(정수) 변환 :
int result = Integer.parseInt(value); // "100" -> 100
System.out.println(result);

//TODO : 에러 발생
String value2 = "100a";
int result2 = Integer.parseInt(value2); // "100a" ->
System.out.println(result2);

JAVA_예외처리(에러처리)방법

Try/Catch/Finally 방법

// TODO: 예외처리(에러처리) 방법: Try/Catch/Finally 방법
// 사용법 :
try {
// 실행문 작성
String data = null;
System.out.println(data.toString());

} catch (Exception e) {
//TODO : 에러가 발생되면 코딩할 부분
System.out.println("에러가 발생했다");
} finally {
// TODO: 추가적인 기능(옵션) : 에러 발생 유무 상관없이 무조건 실행되는 부분
System.out.println("프로그램 끝");
}

// TODO: Catch 블럭 여러개 사용하기
try {
String value = "";
System.out.println(value.toString()); // ""

//TODO : 에러 발생
String value2 = "100a";
int result2 = Integer.parseInt(value2); // "100a" ->
System.out.println(result2);

} catch (NumberFormatException e) {
// TODO: Exception 객체 : 에러객체 (최상위 부모 : 단군할아버지 )
// 에러 종류 : NumberFormatException,
// ArrayIndexOutOfBoundsException 등
System.out.println("숫자 변환이 잘못되었습니다.");
} catch (ArrayIndexOutOfBoundsException e) {
// TODO: handle exception
System.out.println("배열 인덱스 범위가 벗어났습니다.");

// 공유 함수 : static void 함수명(){}
public static void getNull() throws Exception {
// TODO: throws 에악어 의 의미: 나를 실행시키는 쪽에서 에러처리를 하세요 => 다른쪽으로 에러를 미루는 예악어
String data = null; // 빈공간을 의미
System.out.println(data.toString()); // 에러 발생
}

public static void main(String[] args) {
// TODO: 에러처리 2(예외처리 2) : throws 예약어 사용
try {
getNull(); // 실행
} catch (Exception e) {
// TODO: handle exception
}
}
}

ArrayList

=> ArrayList : 배열을 사용하기 쉽게 만들어 놓은 객체
// 장점 : 1) 함수를 이용해서 간편해서 조작 가능
// 2) 고전적 배열 : 방을 미리 예약을 해놓아야함 => new int[6];
// => ArrayList 는 추가시 자동으로 방을 만들어 줌

//사용법: // List<배열자료형> 변수 = new ArrayList

List list = new ArrayList<>();

list.add("java");
 list.add("Sql");
list.add("Spring");
System.out.println(list);

// 출력하기 : 3) System.out.println(변수); // 배열 값 전체 출력
System.out.println(list); // [Java, Sql, Spring]

// 가져오기 : 4) 인덱스번호 : 0 : 변수.get(방번호)
System.out.println(list.get(0)); // 0번 값 출력 : Java

// 수정하기 : 5) 0번방 값 수정 : Java -> 자바 : 변수.set(방번호, 값);
list.set(0, "자바");
System.out.println(list.get(0)); // 자바

// 삭제하기 : 6) 0번방 삭제 : 변수.remove(방번호)
list.remove(0); // 0번 값 삭제
System.out.println(list); // 전체 출력 : [Sql, Spring];

 
profile
백엔드 고수가 되고싶은 사람

0개의 댓글