자바 특이사항 정리

2020-11-04

문자열 포함여부 관련 함수

구분 설명 포함 미포함
contains 문자열에 검색하고자 하는 문자가 있는지 확인 true false
indexOf 문자열에서 검색하는 문자의 위치를 반환 문자 위치 -1
matches 정규식을 이용하여 문자열을 검색한다. true false

startsWith()

  • boolean startsWith(String prefix)
  • startsWith() 함수는 대상 문자열이 특정 문자 또는 문자열로 시작하는지 체크하는 함수이다.
  • 해당 문자열로 시작되는지 여부를 확인하고 boolean 에 맞춰 true/false 값을 리턴한다.

Set - 집합

  • 요소는 중복될 수 없다.
  • 순서가 있을 수도 있다.
  • 정렬될 수도 있다.
클래스 특징 성능
HashSet 순서가 필요없는 데이터를 hash table에 저장. Set 중에 가장 성능이 좋음
TreeSet 저장된 데이터의 값에 따라 정렬됨. red-black tree 타입으로 값이 저장. HashSet보다 성능이 느림
LinkedHashSet 연결된 목록 타입으로 구현된 hash table에 데이터 저장. 저장된 순서에 따라 값이 정렬. 셋 중 가장 느림

Arrays.toString(배열 이름)
배열의 원소를 print하기 위해서는 java.utill.Arrays의 toString 메소드를 사용해야합니다.

System.out.println(Arrays.toString(arr));

  • Collection

여러 요소의 그룹을 하나의 단위로 엮는 객체이고 다양한 인터페이스를 제공합니다. 주로 집계 데이터를 저장, 검색, 수정 및 전달하는 데 사용됩니다.

Array vs ArrayList vs LinkedList

리스트 설명 특징
Array 정적인 길이를 제공하는 배열 크기를 지정(고정)
Vector 동기화 기능이 제공되는 가변이 가능한 자료구조 저장순서 유지/중복허용
ArrayList 동기화가 제공되지 않음 가변이 가능한 자료구조. + 검색 -데이터의 추가, 삭제
LinkedList 연결리스트 라고도 불리며 노드 간에 연결을 통해서 리스트로 구현된 객체 + 데이터의 추가, 삭제 - 검색(인덱스르 가지고 있지 않음)

length() vs size()
length() 메소드는 문자열의 길이를 반환하는 메소드입니다.
size() 메소드도 length() 메소드와 언제나 같은 값을 반환하지만, 해당 string 객체가 메모리에서 실제 사용하고 있는 크기를 나타냅니다.

Queue

메소드 설명
public void offer(Element data) 순차보관
public Element poll() 가장 먼저 보관한 값 꺼내고 반환
public Element peek() 가장 먼저 보관한 값 단순 참조, 꺼내지 않음
public boolean empty() 비어있는지 판별