본문 바로가기
프로그래밍/JAVA 자바 A-Z

[Java 자바 기초] 자료 요소 저장&호출 인터페이스(클래스) - List(Vector, ArrayList), Set(HashSet), Map(HashMap) / iterator 커서 포인터, 인덱스, 무작위

by nisne 2020. 9. 8.

모든 설명은 주석으로 확인할 수 있어요.

하나씩 따라해 보세요. ^^

 

package javaEx;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
import java.util.Vector;

public class Review {
	
	public static void main(String[] args) {
		/*
		Java Collections Framework
		-자료를 모야서 저장할 수 있는 프레임워크
		-주요 api
			interface List 
				java.utill
				순서가 있다, 즉 인덱스가 있다
				자식클래스 Vector, ArrayList
			interface Set
				순서가 없다
				자식클래스 HashSet
			interface Map<k, v>
				순서가 없다
				요소가 <key, value> 쌍의 형태
					key는 중복 불가, value는 중복 가능
				자식클래스 HashMap, Hashtable, Properties
		 */
		
		//List 인터페이스의 Vector 클래스 사용해보기
		Vector vec = new Vector();		//Vector 객체 생성
		
		vec.add(0);			//.add() 함수로 요소 추가
		vec.add('9');
		vec.add("영구");
		
		vec.size();			//.size() 함수로 요소 개수, 즉 list 크기 확인
		
		vec.get(1);			//List는 순서가 있기 때문에 인덱스로 요소를 확인할 수 있다
        
		
		for (int i = 0; i < vec.size(); i++) {	//vec에 저장된 요소 모두 출력해보기
			System.out.println(vec.get(i));
		}
		
		vec.remove(2);			//인덱스로 해당 요소 삭제하기
		
		vec.removeAllElements();	//모든 요소 삭제하기
		
		if(vec.isEmpty()) {		//요소 있는지 확인하기
			System.out.println("영구 없다");
		}else {
			System.out.println("영구 있다");
		}
		        
		//Set 인터페이스의 HashSet 사용해보기
		Set set = new HashSet(); 	//HashSet 객체 생성
		
		set.add(2);			//.add() 함수로 요소 추가
		set.add('E');
		set.add("Eagle");
		
		set.size(); 		//.size() 함수로 요소 갯수 확인
		
		Iterator iter = set.iterator();			//Set는 순서가 없으며, 커서(포인터) 개념으로 자료를 가리킴
												//.iterator() 함수로 리턴값을 받아 Iterator 클래스 객체 생성하여 커서로 사용
		while(iter.hasNext()) {					//.hasNext() 함수로 다음 요소가 있는지 확인하여
												//다음 요소가 없을 때까지 while 반복문 실행
			System.out.println(iter.next());	//.next() 함수로 요소를 불러와 출력			
			
		}//while end
		
		//Map 인터페이스의 HashMap 클래스 사용해보기
		HashMap map = new HashMap();
		map.put("이름", "양덕87");
		map.put("점수", 100);
		map.put("등수", 1);
		
		map.size();		//.size() 함수로 쌍 요소의 갯수 확인
		
		map.get("이름");	//인덱스가 아닌 key를 이용해 요소 불러오기
		map.get("점수");
		map.get("등수");
		
		map.put("등수", 2);		//key를 기준으로 덮어쓰기 가능
		
		//map에 저장된 key와 value를 함께 출력해보기
		Iterator iterr = map.keySet().iterator();	//.keySet() 함수를 통해 키 값을 모두 받은 후 Iterator 클래스 객체 생성
		while (iterr.hasNext()) {					//map의 key 값이 없을 때까지 반복
			Object object = (Object) iterr.next();	//키 값을 불러와 Object 클래스 생성
			System.out.println(object + ":" + map.get(object));	//Object에 저장된 키 값에 대한 value를 함께 출력
		}
		
		//Generic - 원하는 자료형만 저장하고자 할 때 사용
		ArrayList<String> str = new ArrayList<String>();	//<String> -> 문자열로만 요소를 저장하겠다는 의미
		str.add("양덕87");
		str.add("유튜버");
		str.add("블로거");
		str.add("니가 짱 먹어");
		//str.add('👍');		//문자형은 문자열이 아니라 에러
		str.add("👍");
		
		for (int i = 0; i < str.size(); i++) {
			System.out.println(str.get(i));
		}
		

	}//main() end

}//class end

 

영어를 어느 정도 잘하면 프로그래밍에도 많은 도움이 되더군요.

영어를 배울 수밖에 없다면... ^_^

 

 

댓글