TIL

TIL_20220914

번잔중 2022. 9. 14. 21:56

오늘 할 일

🙋🏻 코드 스테이츠 17일차

컬렉션

  • 페어와 연습문제 풀기!

다른거

  • 1일 1커밋
  • 헬스장 등록하기
 

오늘 배운 것

✏️ 컬렉션 연습문제에서 사용한 메서드 정리

List의 메서드

add()

// 10을 ArrayList에 추가
ArrayList<Integer> list = new ArrayList<>();
list.add(10);

// 원하는 위치(인덱스)에 객체를 추가
arrayList.add(index, element);

 

get()

// 인덱스에 해당하는 객체를 리턴
arrayList.get(index);

 

size()

// 리스트의 크기를 반환한다. 배열에서의 length, String의 length()라고 볼 수 있다.
arrayList.size();

 

set() | Set아님!

// 인덱스에 해당하는 위치에 객체를 저장한다.
// 값을 str로 바꿔버리기 때문에 list의 크기는 바뀌지 않음
arrayList.set(index, str);

 

remove()

// 인덱스에 해당하는 객체 제거
arrayList.remove(index);

 

toArray() | 리스트를 배열로 변환

// 리스트를 배열로 변환하는 방법
ArrayList<String> arrayList = new ArrayList<>();
String[] array = arrayList.toArray(new String[arrayList.size()]);


// Arrays 클래스의 메서드로 배열을 리스트로 변환해준다.
Arrays.asList(arr);

 

clear()

// 리스트 내 원소 전체 삭제
arrayList.clear();

Iterator의 메서드

hasNext() + next() | 한 세트로 봐도 무방하다.

// 객체가 있는지 없는지 확인(hasNext()) 후에 객체를 읽어온다.(next())
Iterator<Integer> it = arrayList.iterator(); // 리스트의 반복자 it 선언
while (it.hasNext()) { // 해당 리스트에 읽어올 객체가 있는지 없는지 여부를 boolean 타입 반환
	sum += it.next(); // 하나의 객체를 읽어온다.
}

HashMap의 메서드

get()

// 키에 해당하는 값을 반환한다.
hashMap.get(key);

 

put()

// 해시맵에 키와 값을 추가한다.
hashMap.put(key, value);

 

remove()

// key에 해당하는 Entry를 지운다.
hashMap.remove(key);

 

clear()

// 해시맵에 있는 키와 값(Entry)을 전부 제거
hashMap.clear();

 

size()

// 해시맵의 크기를 반환
hashMap.size();

 

containsKey()

// 해시맵에 key에 해당하는 키가 있는지 확인
hashMap.containsKey(key);

다른거

- 1일 1커밋

백준 사이트에서 단계별로 풀어보기 - 조건문 문제를 7개 모두 풀었다.

  • 1330 - 두 수 비교하기
  • 9498 - 시험 성적
  • 2753 - 윤년
  • 14681 - 사분면 고르기
  • 2884 - 알람 시계
  • 2525 - 오븐 시계
  • 2480 - 주사위 세 개
 

GitHub - chaning49/algorithm: 코딩테스트를 위한 알고리즘 공부

코딩테스트를 위한 알고리즘 공부. Contribute to chaning49/algorithm development by creating an account on GitHub.

github.com

헬스장 등록 

느낀점

  • 컬렉션의 다양한 메서드를 직접 사용해보면서 예전에 힘들게 풀었던 알고리즘 문제들이 생각났다. 그 때 알았다면 List, Set, Map을 사용해서 전처리를 더 편리하게 할 수 있었을 것이다. 지금이라도 알았으니 감사하자! 🙏
  • 자바 언어로 알고리즘 문제를 많이 풀어보기 위해 백준으로 넘어갔다. BufferReader나 BufferWriter, StringTokenizer를 더 많이 사용하고 싶은데 막상 알고리즘 문제를 풀 때는 평소 쓰던 Scanner를 사용하게된다... 억지로라도 써보면서 기능을 더 많이 익혀야겠다.
  • 이대로 있다간 몸이 쓰레기가 될 것 같아서 헬스장을 등록했다. 회사 면접과 라섹 수술로 운동을 내팽개친지 어언 2개월 불어가는 몸을 더이상 방치할 수가 없다. 꾸준히 조금씩이라도 운동하면서 체중을 감량해야겠다. (오랜만에 운동을 했더니 사경 헤메다가 밥먹고 기운차림.)

내일 할 일

🏃🏻 코드 스테이츠 18일차

Effective

  • Annotation
  • Lambda
  • Stream
  • 파일 입출력

다른거

  • 아침 운동
  • 1일 1커밋

'TIL' 카테고리의 다른 글

TIL_20220916  (0) 2022.09.16
TIL_20220915  (0) 2022.09.15
TIL_20220913  (0) 2022.09.13
TIL_20220912  (0) 2022.09.12
TIL_20220911  (0) 2022.09.11