자바에는 기본적으로 제공되는 표준 라이브러리들이 있다.JDK 안에 포함되어 있음.알고리즘 및 코딩테스트를 공부하면서 라이브러리에 취약한 것 같아 스니펫 느낌으로 작성.표준 라이브러리 종류Java.lang객체, 클래스, 시스템, 쓰레드, 예외 처리 등과 같은 핵심 기능 포함.자동으로 Import 됨.Java.util컬렉션 프레임워크를 포함한 날짜와 시간 처리, 이벤트 모델, 난수 생성, 기본 유틸리티 클래스 등 다양한 유틸리티 클래스와 인터페이스를 제공.Java.io입력과 출력(I/O) 기능을 담당하며, 파일 읽기와 쓰기, 데이터 스트림 처리 등을 위한 클래스와 인터페이스를 포함Java.math고정밀도 연산을 지원하는 BigInteger, BigDecimal 등의 클래스를 포함Java.lang 패키지1. ..
서론PS중에 좌표에 대한 객체를 생성하고, 동일 좌표 비교가 필요한 경우가 생겼다.아무생각없이 두 객체에 대한 equlas비교를 진행하고 “왜 안되지?”라고 생각했던 건에 대해서 정리해보는 글을 작성하기로 했다.import java.io.*;public class Main { static class Node { int x; int y; public Node(int x, int y) { this.x = x; this.y = y; } } public static void main(String[] args) throws Exception { Node a = new Node(0,0); ..
여태껏 클래스 내에서 메서드를 선언할 때 static 한정자에 대한 고민을 해본 적이 없었는데, 이번에 자바의 정석을 읽는 도중 좋은 내용을 건진 것 같아 포스팅하여 정리하고자 한다. public class Test { int x; int y; int add() { return x + y; } int add(int x, int y) { return x + y; }}class Practice { public static void main(String[] args) { Test t = new Test(); }}위와 같은 클래스가 있다고 가정하자.매개변수가 없는 add() 메서드의 경우 인스턴스 변수를..
ArrayList가 가변배열이라는 건 알겠는데 한 번 늘 때 얼마나 늘어날까? 궁금해서 알아보았습니다. ArrayList 평소 알고리즘을 풀거나 비즈니스 로직을 개발하다보면 List 인터페이스를 구현한 ArrayList 혹은 LinkedList 클래스를 사용할 때가 많았습니다. 오늘은 문득 ArrayList.add() 라는 메서드를 수행하면 내부적으로 어떤 일들이 일어나는지, 배열 길이를 넘는 데이터를 저장할 때 어떤식으로 가변 동작이 일어나는지 궁금해서 클래스 내부를 한번 들여다보았고 한번 정리해보았습니다. ArrayList Concept 순서가 있는 데이터의 집합으로 ArrayList는 내부적으로 배열을 사용하여 데이터를 연속적으로 저장합니다. 또한 내부가 배열로 이루어져있다보니 길이를 넘어서는 데이..