본문 바로가기

ArrayList2

[JAVA] 프로그래머스 코딩테스트 - 바탕화면 정리 문제 설명 코딩테스트를 준비하는 머쓱이는 프로그래머스에서 문제를 풀고 나중에 다시 코드를 보면서 공부하려고 작성한 코드를 컴퓨터 바탕화면에 아무 위치에나 저장해 둡니다. 저장한 코드가 많아지면서 머쓱이는 본인의 컴퓨터 바탕화면이 너무 지저분하다고 생각했습니다. 프로그래머스에서 작성했던 코드는 그 문제에 가서 다시 볼 수 있기 때문에 저장해 둔 파일들을 전부 삭제하기로 했습니다.컴퓨터 바탕화면은 각 칸이 정사각형인 격자판입니다. 이때 컴퓨터 바탕화면의 상태를 나타낸 문자열 배열 wallpaper가 주어집니다. 파일들은 바탕화면의 격자칸에 위치하고 바탕화면의 격자점들은 바탕화면의 가장 왼쪽 위를 (0, 0)으로 시작해 (세로 좌표, 가로 좌표)로 표현합니다. 빈칸은 ".", 파일이 있는 칸은 "#"의 값을 .. 2023. 4. 1.
[JAVA] ArrayList 내부 구현 ArrayList는 List Interface를 상속받은 구현 클래스이며, 배열의 형태이지만 Array는 크기가 고정이기 때문에 초기 선언시 할당받은 크기만큼만 사용할 수 있어 크기를 늘리려면 새로운 배열을 생성하여 복사해야 하지만, ArrayList는 가변적으로 크기를 늘려 사용할 수 있다는 차이가 있다. ArrayList가 어떻게 Array와 달리 크기를 무한대로 추가할 수 있는지 내부 구현된 부분을 확인해 보았다. ArrayList 내부 구현 //ArrayList.java 내의 코드 /** * Shared empty array instance used for default sized empty instances. We * distinguish this from EMPTY_ELEMENTDATA to .. 2022. 9. 26.