Java

[고급자바] ArrayList 문제

elog 2023. 3. 1. 18:00

문제 1) 5명의 사람 이름을 입력 받아 ArrayList에 저장한 후에

            이 ArrayList에 저장된 이름들 중에 '김'씨 성의 이름을 찾아 모두 출력하시오.
            (단, 입력은 Scanner객체를 이용한다.)

public class ArrayListTest02 {
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		ArrayList<String> nameList = new ArrayList<>();
		
		System.out.println("5명의 이름을 입력하세요.");
		for(int i = 0; i < 5; i++) {
			System.out.print(i + "번째 사람 이름 입력 >> ");
			String name = scanner.nextLine();
			nameList.add(name);
		}
		System.out.println();
		for(int i = 0; i <nameList.size();i++) {
//			if(nameList.get(i).charAt(0) == '김') {
//				System.out.println(nameList.get(i));
//			}
//			if (nameList.get(i).substring(0,1).equals("김")) {
//				System.out.println(nameList.get(i));
//			}
//			if (nameList.get(i).indexOf("김")==0) {
//				System.out.println(nameList.get(i));
//			}
			if (nameList.get(i).startsWith("김")) {
				System.out.println(nameList.get(i));
			} 
		} // for문
	} // main문
} // ArrayListTest02

 

문제 2) 5명의 별명을 입력박아 ArrayList에 저장하고 이들 중 별명의 길이가 제일 긴 별명을 출력하시오.

            (단, 각 별명의 길이는 모두 다르게 입력한다.)

public class ArrayListTest03 {
	public static void main(String[] args) {
	Scanner scanner = new Scanner(System.in);
	ArrayList<String> aliasList = new ArrayList<>();
	
	System.out.println("5개의 서로 다른 길이의 별명을 입력하세요.");
	for (int i = 0; i < 5; i++ ) {
		System.out.println(i + "번째 사람 별명 입력 >> ");
		String alias = scanner.nextLine();
		aliasList.add(alias);
	}
	System.out.println();
	
	// 제일 긴 별명이 저장될 변수를 선언하고 이 변수에
	// List의 첫번째 데이터로 초기화 한다.
	String maxAlias = aliasList.get(0);
	for (int i = 1; i < aliasList.size(); i++) {
		if (maxAlias.length() < aliasList.get(i).length()) {
			maxAlias = aliasList.get(i);
		}
	}// for문
	System.out.println("제일 긴 별명 : " + maxAlias);
	}// main문
}// ArrayListTest03

 

문제 3) 5명의 별명을 입력박아 ArrayList에 저장하고 이들 중 별명의 길이가 제일 긴 별명을 출력하시오.

            (단, 각 별명의 길이가 같을 수 있다.)

public class ArrayListTest04 {
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		ArrayList<String> aliasList = new ArrayList<>();
		
		System.out.println("5개의 별명을 입력하세요.");
		for (int i = 0; i < 5; i++ ) {
			System.out.print(i + "번째 사람 별명 입력 >> ");
			String alias = scanner.nextLine();
			aliasList.add(alias);
		}
		System.out.println();
		
		// 제일 긴 별명의 길이가 저장될 변수를 선언하고
		// List의 첫번째 데이터의 길이로 초기화한다.
		int maxLength = aliasList.get(0).length();
		
		for (int i = 1; i < aliasList.size(); i++) {
			if(maxLength < aliasList.get(i).length()) {
				maxLength = aliasList.get(i).length();			}
		}
		System.out.println("제일 긴 별명들 >> ");
		for (String alias : aliasList) {
			if (alias.length() == maxLength) {
				System.out.println(alias);
			}
		}// for문
	}// main문
}// ArrayListTest04

'Java' 카테고리의 다른 글

[고급자바] Set, Ilterator  (1) 2023.03.02
[고급자바] Stack & Queue  (0) 2023.03.02
[고급자바] Collection(List)  (0) 2023.03.01
[고급자바] Collection(Vector)  (0) 2023.03.01
[고급자바] 이클립스 설치 및 환경설정(UTF-8)  (0) 2023.03.01