국비지원 복습과정 14차 (컬렉션 프레임워크 Collection Framework, Scanner )

Park In Kwon·2022년 9월 15일
0

1. 컬렉션 프레임워크(Collection Framework) 소개

1-1. Collection Framework 란

  • 다수의 데이터를 쉽게 처리할 수 있는 표준화된 방법을 제공하는 클래스들과, 기존 배열형태의 자료 저장에서 좀 더 다양한 데이터들을 저장하기 위한 필수 클래스이다.

1-2. 데이터에 이름표를 적용하여 저장하기

  • HashMap 클래스는 Map 인터페이스를 상속받는 ' 자료보관소'이기 때문에, 암묵적 객체 형변환 규칙에 따라 Map 형태로 선언하고 HashMap 형태로 할당한다.

  • 선언과 할당시에 HashMap의 이름표로 사용할 데이터형(String)과 HashMap에 저장할 데이터 형을 클래스의 이름
    으로 명시해야 되는데, 이를 '제너릭스'라 한다.

  • 제너릭스에 명시할 수 있는 데이터형은 반드시 클래스 이름이어야 하기 때문에 기본 자료형을 보관할 경우
    Wrapper 클래스의 이름을 사용한다.

    Map<String, 저장할 데이터의 클래스 이름> data
    = new HashMap<Stirng, 저장할 데이터의 클래스이름>( );

  • 기존에 저장된 데이터와 중복되는 이름이 저장될 경우, 기존에 저장된 데이터를 덮어 씌우게 된다.

1-3 ArrayList 사용

  • ArrayList는 List 인터페이스를 상속받는 클래스로, 데이터를 이름표 없이 무제한으로 보관할 수 있다.

  • ArrayList에 추가되는 데이터는 순차적으로 배열과 같은 인덱스 번호를 부여 받는다.

  • 상위 인터페이스형으로 선언하고 ArrayList클래스로 객체를 할당하여, 선언과 할당시에는 보관하고자
    하는 자료형에 대한 제너릭스를 명시한다.

    List<저장할 데이터의 클래스 이름> list
    = new ArrayList<저장할 데이터의 클래스 이름>( );

Scanner

package scanner;

import java.util.Scanner;

public class Main01 {

	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		
		System.out.print("int type 입력 : ");
		int i = scanner.nextInt();
		System.out.println("int 결과 : " + i);
		
		System.out.print("String 입력 : ");
		String s = scanner.next();
		System.out.println("String 결과 : " + s);
		
		scanner.close();
	}
}

package scanner;

import java.util.Scanner;

/*
 * scanner.next() 		: 공백 전 까지 입력을 받음
 * scanner.nextLine()	: 한 줄 전체를 입력 받음
 */
public class Main02 {

	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		
		System.out.println("문자열 입력 : ");
		String str1 = scanner.nextLine();
		System.out.println(str1);
		
		System.out.println("문자열 입력 : ");
		String str2 = scanner.next();
		System.out.println(str2);
		
		scanner.close();
	}
}

package scanner;

import java.util.Scanner;

public class Main03 {

	public static void main(String[] args) {
		System.out.println("----- 회원가입을 시작합니다 -------------");
		Scanner scanner = new Scanner(System.in);
		
		System.out.println("아이디를 입력하세요");
		String str1 = scanner.nextLine();
		System.out.println(str1);
		
		if( str1.length() > 11 ) {
			System.out.println("아이디는 10자 이하의 글자로만 입력해주세요");
		} else {
			System.out.println("입력하신 아이디 " + str1 + "로 회원가입을 시작합니다");
		}
		
		scanner.close();
	}
}
profile
개발자로 진로 변경을 위해 준비하고 있습니다

0개의 댓글