JavaRush /Java Blog /Random-KO /Java Collections Framework에서 제공하는 ArrayList, Vector 및 Has...
ramhead
레벨 13

Java Collections Framework에서 제공하는 ArrayList, Vector 및 HashMap 컬렉션 클래스를 사용하는 방법

Random-KO 그룹에 게시되었습니다
이 기사에서는 컬렉션 프레임워크 의 세 가지 중요한 컬렉션 클래스인 ArrayList , VectorHashMap 에 대해 배우고 이를 자체 코드에서 사용하는 방법을 알아봅니다. 컬렉션 및 컬렉션 클래스를 사용하면 요소 그룹을 간단한 개체로 저장하고 이러한 클래스에서 사용할 수 있는 다양한 메서드를 사용하여 요소를 조작할 수 있습니다. 수업은 패키지 에서 제공됩니다 . 또 다른 클래스는 키-값 매핑 컬렉션을 저장할 수 있는 package 에서 사용할 수 있는 컬렉션입니다 . 이를 통해 키가 알려졌을 때 컬렉션에서 원하는 값을 얻을 수 있습니다. 이러한 컬렉션 클래스를 사용하는 예를 하나씩 살펴보겠습니다. 예제 1. 이 예제에서는 클래스( ArrayList 컬렉션)를 사용하여 간단한 프로그램을 작성합니다. 목록 1. 예제 1의 실행 코드 Java Collections Framework에서 제공하는 ArrayList, Vector 및 HashMap 컬렉션 클래스를 사용하는 방법 - 1ArrayListVectorArrayListVectorjava.utiljava.utilHashMap
// подключаем класс
import java.util.ArrayList;
public class ArrayListExample {
  static String[] favouriteCharacters = {"Harry", "Ron", "Hermione",  "Snape", "Dumbledore", "Moody", "Riddle", "Fred"};
   int i;
   public ArrayList favouritelist = new ArrayList();
// метод добавляет элементы ‘favouriteCharacters’ в ‘favouritelist’
 private void includeCharacters(String[]favouriteCharacters)
       {
        for (i = 0; i < favouriteCharacters.length; i++) {
            // добавление элементов по одному из массива ‘favouriteCharacters’
            favouritelist.add(favouriteCharacters[i]);
            printCharacters(i);
        }
// добавление элементов, посредством указания позиций
        favouritelist.add(1, "george");
        favouritelist.add(4, "Peter");
    }
// метод выводит элемент ‘favouritelist’ по указанной позиции
    private void printCharacters(int i) {
        System.out.println("Character " + (i + 1) + ":" + favouritelist.get(i));
    }
// метод выводит все элементы ‘favouritelist’
    private void printCharacters() {
        System.out.println("\n");
        for(int i=0;i<favouritelist.size();i++){
        System.out.println("Character" + (i + 1) + ":" + favouritelist.get(i));
    }    }
// метод возвращает размер коллекции ‘favouritelist’
    private int sizeofCharactersList() {
        System.out.println("\n");
        System.out.println("Total No of Characters in Array:" + favouriteCharacters.length);
        System.out.println("Total No of Characters in List:" + favouritelist.size());
        return favouritelist.size();
    }
// метод выводит позицию element ‘favouritelist’ по указанному имени
 public void getCharacterPostion(String characterName) {
     System.out.println("\n");
        System.out.println("The position of the character\t" + characterName + "\tis\t" + favouritelist.indexOf(characterName));
    }
// метод удаляет элемент ‘favouritelist’ по указанному имени
    public void removeCharacter(String characterName) {
        if(favouritelist.size()>favouriteCharacters.length){
        favouritelist.remove(characterName);
        }
        else{
             System.out.println("\n");
             System.out.println("The element\t"+favouritelist.get(favouritelist.indexOf(characterName))+"\tcannot be removed");
        }
        }
// метод удаляет элемент ‘favouritelist’ по указанной позиции
    public void removeCharacter(int i) {
        if(favouritelist.size()>favouriteCharacters.length){
        favouritelist.remove(i);
          }
        else{
            System.out.println("The element\t"+favouritelist.get(i)+"\tcannot be removed");
        }
    }
    public static void main(String args[]) {
        ArrayListExample example = new ArrayListExample();
        example.includeCharacters(favouriteCharacters);
        example.printCharacters();
        int size = example.sizeofCharactersList();
        example.getCharacterPostion("Ron");
        example.removeCharacter("Snape");
        example.removeCharacter(2);
        example.sizeofCharactersList();
        example.removeCharacter("Harry");
         example.removeCharacter(4);
    }
}
이 프로그램을 실행하면 다음과 같은 출력이 생성됩니다.
Character 1:Harry
Character 2:Ron
Character 3:Hermione
Character 4:Snape
Character 5:Dumbledore
Character 6:Moody
Character 7:Riddle
Character 8:Fred


Character1:Harry
Character2:george
Character3:Ron
Character4:Hermione
Character5:Peter
Character6:Snape
Character7:Dumbledore
Character8:Moody
Character9:Riddle
Character10:Fred


Total No of Characters in Array:8
Total No of Characters in List:10


The position of the character	Ron	is	2


Total No of Characters in Array:8
Total No of Characters in List:8


The element	Harry	cannot be removed
The element	Dumbledore	cannot be removed
제공된 예제 프로그램을 단계별로 살펴보겠습니다. 이 예에서는 프로그램의 첫 번째 줄에서 클래스 컬렉션을 가져옵니다 ArrayList. favouriteCharacters그런 다음 사람 이름과 favouritelist컬렉션 인스턴스가 포함된 문자열 배열을 차례로 초기화합니다 ArrayList. 방법은 includeCharacters(args)두 부분으로 나눌 수 있습니다. 메서드의 첫 번째 부분에서는 루프를 사용하여 배열의 요소가 컬렉션에 추가됩니다. 이 경우 요소 추가는 ArrayList배열에 있는 순서와 동일하게 수행됩니다. 이는 컬렉션에 추가되는 요소의 위치를 ​​정의하지 않기 때문에 발생합니다. 그러나 우리 방법의 두 번째 부분에서는 인덱싱을 사용하여 요소가 추가됩니다. 이 경우 컬렉션의 지정된 정확한 위치에 요소가 추가됩니다. 컬렉션 중간에 새 요소가 추가되면 ArrayList해당 컬렉션에 이미 존재하는 요소 중 새 요소의 지정된 삽입 위치 너머에 있는 요소가 원래 위치에서 다음 위치로 이동하여 컬렉션의 크기가 늘어납니다. 먼저 출력을 살펴보면 다음과 같은 내용을 볼 수 있습니다.
Total No of Characters in List: 10
Total No of Characters in Array: 8
이는 에 추가된 8개의 요소가 있는 배열 외에 ArrayList명시적으로 2개의 요소를 더 추가하여 컬렉션의 크기를 10으로 늘리기 때문입니다. 이 메서드는 getCharacterPosition(args)요소(사람 이름)의 값을 가져와 위치를 표시합니다. 컬렉션에 있는 이 요소의 ArrayList. 에 해당 요소가 없으면 ArrayList-1 값이 표시됩니다. 이 메서드는 removeCharacter(args)해당 요소의 인덱스나 요소 자체를 인수로 사용하여 컬렉션에서 지정된 요소 값(사람 이름)을 제거합니다. 위 코드에서는 컬렉션에서 2개의 요소를 제거했기 때문에 컬렉션의 크기가 10이 아닌 8이 된 것을 확인할 수 있습니다. 배열과 컬렉션의 크기가 동일한 경우 메서드는 다음 줄을 반환합니다.
The element Harry cannot be removed
The element Dumbledore cannot be removed
메서드 실행은 removeCharacter(args)컬렉션의 크기가 배열의 크기보다 커야 한다는 사실에 의해서만 결정됩니다. 예제 2. 이 예제에서는 클래스(컬렉션)를 사용하여 간단한 프로그램을 작성합니다. Vector 목록 2. 예제 2의 실행 코드
// подключаем класс
import java.util.Vector;
public class VectorExample {
    Vector vector=new Vector();
    public void addCharacterandPrint(){
        vector.add("Weasley");
        vector.add("Potter");
        for(int i=0;i<vector.size();i++){
        System.out.println("The characters are\t"+vector.get(i));
        }
    }
    public static void main(String args[]){
        VectorExample example=new VectorExample();
        example.addCharacterandPrint();
        }
}
이 프로그램을 실행하면 다음과 같은 출력이 생성됩니다.
The characters are Weasley
The characters are Potter
위의 코드는 컬렉션 ArrayListVector. 컬렉션은 Vector컬렉션과 동일한 방법 ArrayList, 동일한 방식으로 조작할 수 있습니다. 예제 3. 이 예제에서는 컬렉션 클래스를 사용하여 간단한 프로그램을 작성합니다. HashMap 목록 3. 예제 3의 실행 코드
// подключаем класс
import java.util.HashMap;
public class HashMapExample {
    HashMap hashMap=new HashMap();
    String Books[]={"Famous Five","Goosebumps","Robinson Crusueo","Nancy Drew","The Cell","The Davinci Code","Harry Potter"};
    public void mapAuthors(){
        hashMap.put("Famous Five","Enid Blyton");
        hashMap.put("Goosebumps","R.L.Stine");
        hashMap.put("Nancy Drew","Carolyn Keene");
        hashMap.put("The Cell","Christopher Pike");
        hashMap.put("The Davinci Code","Dan Brown");
        hashMap.put("Harry Potter","J.K. Rowling");
    }
    public void getBookList(){
        for(int i=0;i<Books.length;i++){
            if(hashMap.containsKey(Books[i])){
                System.out.println("Author"+(i+1)+":\t"+hashMap.get(Books[i])+"\t"+Books[i]);
            }
            else{
                System.out.println("\nThe Imformation about the author of the book\t"+Books[i]+"\tis not available\n");
            }
        }
    }
    public static void main(String args[]){
        HashMapExample hashMapExample=new HashMapExample();
        hashMapExample.mapAuthors();
        hashMapExample.getBookList();
    }
}
이 프로그램을 실행하면 다음과 같은 출력이 생성됩니다.
Author1: Enid Blyton Famous Five
Author2: R.L.Stine Goosebumps
The Information about the author of the book Robinson Crusueo is not available
Author4: Carolyn Keene Nancy Drew
Author5: Christopher Pike The Cell
Author6: Dan Brown The Davinci Code
Author7: J.K. Rowling Harry Potter
위의 코드를 단계별로 살펴보겠습니다. 이 예제 프로그램에는 유명한 책의 이름을 요소로 하는 문자열 배열이 있습니다. 이 방법은 mapAuthors()저자와 함께 책 제목을 표시합니다. 여기서 키는 책의 제목이고, 값은 해당 책의 저자입니다. 메소드가 호출되면 getBookList()배열을 반복하여 Books책 제목을 하나씩 가져옵니다. 다음으로, 이 메서드는 책에 자체 저자가 있는지 확인합니다. 보시다시피 메소드가 책의 저자를 찾을 수 없으면 메시지가 표시됩니다 not available. 그렇지 않으면 저자와 그의 책이 하나씩 표시됩니다. 결론:ArrayList 이 기사에서 우리는 클래스(컬렉션 , Vector, ) 에 대해 조금 연구하고 HashMap이를 우리 코드에서 사용해 보았습니다. 원본 기사: Java Collections Framework에서 제공하는 ArrayList, Vector 및 HashMap 클래스를 사용하는 방법
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION