☕ JAVA 131

[JAVA]ArraList

ArrayList이름에 array배열이 들어가 있는 걸 보면 알 수 있듯이, 데이터의 저장공간을 배열을 사용한다.저장순서 index를 가진다.중복을 허용한다.요소가 추가되면 저장공간이 자동으로 늘어난다.ArrayList클래스에 있는 메서드 뿐아니라 Collection클래스에 있는 메서드도 상속되어 사용할 수 있습니다.선언방법 기본생성 → List lst1 = new ArrayList(); 용량지정 생성 →  List lst2 = new ArrayList(3); 다른 Collection을 담아서 생성할 수 있다. LinkedList, vector 등도 추가 가능. →  List lst3 = new ArrayList(lst2); add(element): 뒤에서 부터 요소를 추가한다.  add(index, ..

[JAVA]Vector란?

ArrayList의 구버전자료형 이라고 생각하시면 됩니다.  개발을 하다보면 AS-IS(현재 코드)에 vector가 보이곤 합니다.이를 TO-BE(구현할 코드)로 바꾸려면 ArrayList로 바꾸어서 개발하시면 됩니다.  특징하나의 스레드가 실행 완료해야만, 다른 스레드를 실행할 수 있다.그래서 스레드가 안전하다(Thread Safe). 멀티 스레드 환경에서 안전하게 객체를 추가, 삭제 할 수 있다는 뜻이다. Vector와 ArrayList 차이점Vector는 동기화 되어있고ArrayList는 동기화 되어있지 않다.

[JAVA]객체지향 4가지 원칙(특징)

4 Principles of OOP  추상화 Abstraction공통 개념들을 추상적인 큰 개념으로 묶을 수 있다.ex) 같이 쓰이는 메서드들을 class에 묶고 다시 package로 묶는다.상속 Inheritance부모 클래스가 가진 필드와 메서드를 자식 클래스가 사용할 수 있게 한다.반복을 줄이고 재사용성을 높인다.다형성 Polymorphism동일한 인터페이스를 통해 다양한 객체를 사용할 수 있게 한다.캡슐화 Encapsulation필드&메소드를 하나로 묶되, 숨길 데이터를 접근제한자를 이용해 은닉하여 보호한다.인터페이스를 통해서만 데이터에 접근할 수 있게 한다.※ 관련 포스팅2024.03.13 - [☕ 자바 JAVA/☕ 클래스와 함수 Class & Method] - [JAVA]상속 Inheritan..

[JAVA]Arrays: 배열 다루기

Arrays 클래스란jdk docsArray 배열이란❓2024.08.22 - [☕ 자바 JAVA/☕ 변수와 자료형 Variables & Data Type] - [JAVA]배열 Array [ ]  Arrays.toString(배열): 배열을 문자열로 반환한다.여기 밑으로는 Arrays.toString()코드를 좀 더 간단히 쓰고자 아래와 같은 함수를 만들어 사용했습니다.  Arrays.deepToString(배열): 다차원배열을 문자열로 반환한다.  Arrays.fill(배열, value): 배열을 특정 값으로 채운다.  setAll(배열, 람다식): 람다식을 이용해 값을 채운다. 람다식이란❓2024.12.11 - [💬 프로그래밍 표현식] - [Lambda]람다식  Arrays.copyOf(배열, int..

[JAVA]Collections 종류

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

[JAVA]StringTokenizer

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

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

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

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

java.text 패키지  DecimalFormat와 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): M..

[JAVA]날짜와 시간

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

반응형