분류 전체보기 316

[JAVA]Collections 종류

Collections List순서 ⭕중복 ⭕구현클래스 종류ArrayListLinkedListSet순서 ❌중복 ❌ 구현클래스 종류 HashSetTreeSetMapkey-value 쌍을 저장한다.키는 중복 ❌구현클래스 종류HashMapTreeMapQueue요소들이 순서대로 처리된다.구현클래스 종류LinkedListPriorityQueue배열Array와 차이점크기가 가변적이다.다양한 메서드를 사용할 수 있다.인터페이스(List, Set, Map)는 단독으로 사용할 수 없습니다.구현클래스(ArrayList, HashMap...)들이 필요합니다. 그래서 보통 코드를 적을 때List lst = new ArrayList(); 와 같이 적습니다.가장 많이 쓰이는 게 Map. 그 다음이 List입니다.그 중에서도 Has..

[JAVA]StringTokenizer

※ Tokenizer란? 자연어처리를 돕는 도구 중에 하나입니다.※ 이름이 복잡해보이지만 사실 StringTokenizer는 문자열을 나눈다는 점에서 split과 비슷합니다.또한 자주 쓰이는 메서드는 두가지 밖에 없습니다. StringTokenizer(문자열): 띄어쓰기로 나눈다.띄어쓰기로 나누어진 문자열들을 '토큰'이라고 합니다.st.nextToken()토큰을 차례대로 하나씩 가져옵니다.st.hasMoreTokens()토큰을 더 가져올 수 있는 지 확인합니다.boolean 반환.StringTokenizer(문자열, 구분자): 문자열을 구분자로 나눈다.

Program, Process, Thread, Runnable

Program : 실행 파일 (executable file).컴파일되어 저장된 파일로, 사용자가 실행할 수 있습니다.Process : 실행되고 있는 상태.운영 체제에서 실행 중인 프로그램의 인스턴스.메모리와 CPU 자원을 사용하며, 각각 독립적인 메모리 공간을 가집니다.. Thread : 작업 단위.프로세스 내에서 실행되는 더 작은 단위.여러 스레드는 한 프로세스 내에서 자원을 공유합니다.Runnable (Thread) : 하나의 Process에 여러 개의 메소드 단위로 실행되는 모듈.Runnable 인터페이스를 구현하여 스레드를 생성할 수 있습니다.멀티스레딩을 통해 동시에 여러 작업을 처리할 수 있습니다.Process (Runtime) : 응용 프로그램(.exe) 단위로 실행되는 모듈.OS에서 제어할 ..

[JAVA]java.text.SimpleDateFormat:날짜와 시간을 형식화

초기화new SimpleDateFormat("패턴"); https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/text/SimpleDateFormat.htmlsdf.format(날짜): 날짜와 시간을 원하는 형태로 바꾸어 String으로 반환.parse("문자열"): 형식화된 문자열 → 날짜와 시간으로 변환.❗   parse() 를 사용할 때는 ParseException을 예외 처리가 필수이다.참조 : https://youtu.be/Ai396kKcyrQ?si=0_Ye6CCX74-HFWqD

[JAVA]java.text.DecimalFormat:숫자 형식화

java.textDecimalFormat와 SimpleDateFormat 클래스 모두 java.text 패키지에 포함되어 있다.java.text는 다양한 텍스트(숫자, 날짜, 문자열)을 형식화, 분석, 반복 작업을 하는 클래스들이 모아진 클래스이다.DecimalFormat class초기화new DecimalFormat("형식"); 원하는 형식을 인수로 담아 만든 인스턴스 객체를 만들어 사용한다.이 객체의 아래 메서드들을 이용해서 사용한다.format(): 숫자를 원하는 형식으로 사용할 수 있다. new DecimalFormat("형식 입력");DecimalFormat의 format() 메서드를 이용해 변환한다.String으로 반환된다.parse("숫자");: 형식화된 문자열 → 숫자로 반환한다.형식화되어..

[JAVA]Calendar

※ 이전 글 : 2024.11.13 - [☕ 자바 JAVA/☕ 클래스와 함수 Class & Method] - [JAVA]날짜와 시간불러오고 간단한 사용은 이전 글을 참고해주세요!날짜 지정set()시간을 설정할 때는 초단위까지 모두 설정하는 걸 권장한다.시간차 구하기getTimeInMillis()millision천단위이기때문에 1000이 1초입니다.따라서 이렇게 /1000 으로 나누어주어야 합니다.시간과 날짜를 구할 때 위의 코드와 같이 초를 나누어 계산하는 것을 권장합니다.add()필드값 증감(다른 필드에 영향O)add(Calendar.필드, +/-숫자)date.clear(): 1970년 1월 00:00:00시로 초기화되는 걸 볼 수 있다.date.set(2020, 7, 31): MONTH필드는 0부터 ..

[JAVA]날짜와 시간

유틸리티 종류와 권장java.util.Date날짜와 시간을 다루는 클래스.급하게 만들어진 오래된 유틸로 문제가 많아 deprecated되었다.java.util.CanlendarDate클래스를 개선한 새로운 클래스.여전히 항상 날짜와 시간을 함께 다룬다는 단점이 존재.java.time 패키지Date와 Time을 개선한 새로운 클래스를 제공한다. JDK8부터 사용 가능.되도록 java.time 사용해야 하지만, 실무에서는 아직도 Calendar를 사용하는 경우가 많다.불러오기추상클래스라서 getInstance()를 통해서 객체를 만들어 사용한다.현재 날짜와 시간으로 초기화된다.서양력, 불교력, 일본력 등 다양한 시간이 있다.한국은 서양력GregorianCalendar를 사용한다.사용전에 clear를 하고 날..

[JAVA]Autoboxing & Unboxing

Autoboxing: 기본타입 → wrapper class참조타입로 자동변환. 많이 쓰는 collection의 generic도 을 적는다.하지만 기본타입 int를 바로 추가할 수 있다.컴파일러가 자동으로 autoboxing해주기 때문이다.Unboxing : wrapper clas참조타입→기본타입으로 자동변환.※ 결론옛날 버전에서는 자동으로 기본형↔참조형 타입변환되지 않았는데,지금은 컴파일러가 해주기 때문에 우리가 편하게 바로 쓸 수 있다는 것이다.참조 : https://youtu.be/U97lvN1JhrA?si=qW3icQrZnYgQRg45

[JAVa]Wrapper 래퍼클래스&형변환(+진법변환)

Wrapper class: 기본타입→객체(참조타입) 으로 변경할 때 사용.사용 목적  기본 타입들의 래퍼 클래스기본 타입래퍼 클래스byteByteshortShortintIntegerlongLongfloatFloatdoubleDoublecharCharacterbooleanBoolean ※ String은 기본타입이 아니라 참조타입입니다.기본타입처럼 사용하지만, 참조형으로 heap 메모리영역을 이용하는 녀석입니다.따라서 래퍼 클래스가 필요 없습니다.Number classWrapper class들의 조상.오른쪽 그림과 같은 메서드들을 가지고 있습니다.그럼 Wrapper class에서 저 메소드들을 사용해 형변환을 할 수 있겠죠.valueOf(): Wrapper clas→기본타입 변환.valueOf()로 사용하길..

[JAVA]StringBuilder & Math 클래스

StringBuilder classStringBuffer와 거의 동일하다.다른 점은 StringBuffer는 동기화가 되어있어 멀티 쓰레드에 안전하다(thread-safe).StringBuilder는 동기화되지 않아 멀티 쓰레드에 안전하지 않다.따라서 싱글 쓰레드에서는 StringBuilder를 사용하면 성능이 향상.Math classabs(넘버형 데이터타입)absolute의 abs이다.절대값을 반환한다.여기서 절대값이란 음수가 아닌 양수값을 말한다.반환하는 타입은 입력 데이터타입과 동일하다.round(float or double)가장 일반적인 반올림 메서드.소수점 첫번째에서 반올림한 정수값(Integer)를 반환한다. ceil(double d)반올림하여 반환한다.반환타입 double.floor(doub..