25강. Collections
25-1. List
- 인터페이스로, 이를 구현한 클래스는 인덱스를 이용해서 데이터를 관리한다.
# 특징
- 인덱스를 이용함
- 데이터 중복이 가능함
//ArrayList 객체생성
ArrayList<String> list = new ArrayList<String>();
// 데이터 추가
list.add("Hello");
list.add("Java");
list.add("World"); // Hello Java World
list.add(2,"programming"); // Hello Java Programming World
list.set(1,"c"); // 인덱스1에 있는 데이터를 "c"로 바꿈
// Hello C Programming World
// 데이터 추출
String str = list.get(2); // 인덱스가 2인 데이터를 추출
// Programming
// 데이터 제거
str = list.remove(2); // Programming
// 데이터 전체 제거
list.clear();
// 데이터 유무
boolean b = list.isEmpty(); // true
25-2. Map
- 인터페이스로, 이를 구현한 클래스느 key를 이용해서 데이터를 관리한다.
# 특징
- key를 이용한다
- key는 중복될 수 없다.
- 데이터 중복이 가능함.
// HashMap 객체생성
HashMap<Integer, String> map = new HashMap<Integer, String>();
System.out.println("map.size() == " + map.size()); // 0
// 데이터 추가
map.put(5, "Hello");
map.put(6, "Java");
map.put(7, "World");
map.put(8, "!!"); //{5=Hello, 6=Java, 7=World, 8=!!}
// 데이터 교체
map.put(6, "C"); // {5=Hello, 6=C, 7=World, 8=!!}
// 데이터 추출
str = map.get(5); // Hello
//데이터 제거
map.remove(8); // {5=Hello, 6=C, 7=World}
// 특정 데이터 포함 유무
b = map.containsKey(7); // true
b = map.containsValue("World"); // true
// 데이터 전체 제거
map.clear();
// 데이터 유무
b = map.isEmpty(); // true
26강. 예외처리
- 프로그램에 문제가 발생했을 때 시스템 동작에 문제가 없도록 사전에 예방하는 코드를 작성하는 방법.
26-1 예외란?
Exception - Checked Exception : 예외처리를 반드시 해야하는 경우. (네트워크, 파일 시스템 등)
- Unchecked Exception: 예외처리를 개발자의 판단에 맡기는 경우.(데이터 오류 등)
26-2 Exception 클래스
- NullPointerException : 객체를 가리키지 않고있는 레퍼런스를 이용할 때.
- ArrayIndexOutOfBoundException: 배열에서 존재하지 않는 인덱스를 가리킬 때.
- NumberFormatException : 숫자데이터에 문자데이터 등을 넣었을 때.
. . .
26-3 try ~ catch
- 개발자가 예외처리하기에 가장 쉽고, 많이 사용되는 방법임.
try {
예외가 발생할 수 있는 코드
} catch ( Exception ){
예외가 발생했을 때 처리할 코드
}
e.printStackTrace( ); => 어떤 에러가 발생했는지를 콘솔창에 출력하는 메서드.
e.getMessage( ); => 예외를 간략하게 나타냄.
26-4 다양한 예외처리
26-5 finally
- 예외발생 유무에 상관없이, 반드시 실행된다.
26-6 throws
- 예외발생시, 예외처리를 직접하지 않고 호출한 곳으로 넘긴다.
27강. 입력과 출력
27-1 입/출력이란?
27-2 입/출력 기본 클래스
27-3 FileInputStream / FileOutputStream
- 파일에 데이터를 읽고 쓰기위한 클래스로, read( ), write( )메서드를 이용한다.
FileInputStream
read( ); -> 1byte씩 읽음
read( byte[ ] ); -> [ ]의 크기만큼 읽음
FileOutputStream
write( byte [ ] b ); -> 전체 쓰기
write( byte[ ], int off, int len ); -> off( 시작점 ), len( 길이 )
27-4 파일복사
27-5 DataInputStream, DataOutputStream
27-6 BufferedReader, BufferedWriter
28강. 네트워킹
28-1 네트워크 데이터 입력 및 출력
28-2 소켓(Socket)
28-3 소켓클래스
28-4 Clien와 Server소켓
28-5 양방향 통신
'ONLINE COURSES > Java' 카테고리의 다른 글
인프런 자바기초강의_인터페이스, 추상클래스, 람다식 (0) | 2021.07.30 |
---|---|
인프런 자바기초강의_15,16,17,18,19,20강 (0) | 2021.07.25 |
인프런 자바기초강의_9,10,11,12,13강 (0) | 2021.07.17 |
인프런 자바기초강의_5,6,7,8강 (0) | 2021.07.15 |
댓글