기본 문법 활용하기 -2(자바의 자료형)

2022. 8. 31. 15:26정처기(실기)/프로그래밍 언어 활용

(1) 자료형

 

▼ 자바 자료형

자료형 설명
HashSet 중복된 원소를 허용하지 않는 집합의 성질을 가진 클래스
순서가 중요하지 않음
ArrayList 크기가 가변적으로 변하는 선형리스트의 성질을 가진 클래스
순서가 중요함
LinkedList 데이터를 저장하는 노드가 이전 노드와 다음 노드의 상태를 알고 있는 링크드 리스트 자료구조를 구현한 클래스
HashMap 키와 값으로 구성된 객체를 저장하는 구조로 되어 있는 자료구조를 구현한 클래스

 

 

[1] : HashSet 형

- Set의 자식 클래스(하위 클래스 : 파생 클래스)로 중복된 원소를 허용하지 않는 집합의 성질을 가지고 있는 자료형이며 클래스이다. 

 

ex)

Set 변수명 = new HashSet();

HashSet 변수명 = new HashSet();

 

- Set은 HashSet의 부모 클래스이기 때문에 타입 선언 시 Set과 HashSet 둘 다 상관없으나 HashSet의 기능을 사용하기 위해서는 대입 부분에 HashSet()으로 생성해야 한다.

 

§ HashSet 메소드

  • add : 값을 추가하는 메소드, 중복된 값이 들어오면 추가하지 않음
  • remove : 값을 제거하는 메소드
  • size() : HashSet에 들어있는 원소의 개수를 얻는 메소드
public static void main(Stinrg[] args) {
	Set h = new HashSet();
    
    h.add(2);
    System.out.println(h);		//[2]
    
    h.add(1);
    System.out.println(h);		//[1, 2]
    
    h.add(1);
    System.out.println(h);		//[1, 2]
    
    h.remove(1);
    System.out.prinltn(h);		//[2]
    
    System.out.println(h.size());		//1

}

 

 

[2] : ArrayList 형

- List의 자식 클래스로 크기가 가변적으로 변하는 선형 리스트의 성질을 가지고 있는 자료형이며 클래스이다.

 

ex)

List 변수명 = new ArrayList();

ArrayList 변수명 = new ArrayList();

 

- List는 ArrayList의 부모 클래스이기 때문에 타입 선언 시 List와 ArrayList 둘 다 상관없으나, ArrayList의 기능을 사용하기 위해서는 대입 부분에 ArrayList()로 생성해ㅑㅇ 한다.

 

§ ArrayList 메소드

  • add : 값을 추가하는 메소드
  • add(인덱스, 값) : 해당 인덱스(번지)에 값을 추가하는 메소드
  • remove(인덱스) : 해당 인덱스에 값을 제거하는 메소드
  • get(인덱스) : 해당 인덱스에 값은 얻는 메소드
  • size() : ArrayList에 들어있는 원소의 개수를 얻는 메소드

 

public static void main(String[] args) {
	List a = new ArrayList();
    
    a.add(2);
    System.out.println(a);		//[2]
    
    a.add(1);
    System.out.println(a);		//[2, 1]
    
    a.add(1);
    System.out.println(a);		//[2, 1, 1]
    
    a.add(1, 3);
    System.out.println(a);		//[2, 3, 1, 1]
    
    
    a.remove(2);
    System.out.println(a);		//[2, 3, 1]
    
    System.out.println(a.get(2));	//1
    System.out.println(a.size());	//3

}

 

[3] : HashMap 형

- 키와 값으로 구성된 객체를 저장하는 구조로 되어 있는 자료구조를 구현한 자료형이며 클래스이다.

 

ex)

Map 변수명 = new HashMap();

HashMap 변수명 = new HashMap();

 

-> Map은 HashMap의 부모 클래스이기 때문에 타입 선언 시 Map과 HashMap 둘 다 상관없으나 HashMap의 기능을 사용하기 위해서는 HashMap()으로 생성해야 한다.

 

  • put(키, 값) : 해당 키에 해당하는 값을 추가하는 메소드
  • remove(키) : 해당 키에 해당하는 값을 제거하는 메소드
  • get(키) : 해당 키에 해당하는 값을 얻게 되는 메소드
  • size( ) : HashMap에 들어있는 원소의 개수를 얻는 메소드
public static void main(String[] args) {
	Map h = new HashMap();
    
    h.put(1, "A");
    System.out.println(h);		//{1=A}
    
    h.put(1, "C");
    System.out.println(h);		//{1=C}
    
    h.put(2, "D");
    System.out.println(h);		//{1=C, 2=D}
    
    h.remove(1);
    System.out.println(h);		//{2=D}
    
    System.out.println(h.get(2));		//D
    
    System.out.println(h.size());		//1

}