3.3. 프로그램언어 자바(Java)의 배열과 컬렉션

프로그램언어 자바(Java)에서의 배열 선언과 초기화

자바(Java) 프로그래밍 언어에서 배열을 선언하고 초기화하는 방법에 대해 알아보겠습니다.

배열은 동일한 데이터 유형의 여러 값을 저장하는 자료 구조입니다. 배열을 선언하고 초기화하는 방법은 다음과 같습니다.

배열을 선언할 때에는 데이터 유형을 지정하고 배열의 이름을 정의해야 합니다. 배열을 초기화할 때에는 배열의 크기를 지정하고 각 요소에 값을 할당합니다.

아래는 배열을 선언하고 초기화하는 예제 코드입니다.


public class ArrayExample {
    public static void main(String[] args) {
        // 배열 선언
        int[] numbers;

        // 배열 초기화
        numbers = new int[5];
        numbers[0] = 10;
        numbers[1] = 20;
        numbers[2] = 30;
        numbers[3] = 40;
        numbers[4] = 50;

        // 배열 요소 출력
        for (int i = 0; i < numbers.length; i++) {
            System.out.println("Element at index " + i + ": " + numbers[i]);
        }
    }
}

위 예제 코드에서는 정수형 배열을 선언하고 크기가 5인 배열을 초기화하였습니다. 각 요소에 값을 할당한 후 반복문을 통해 배열의 내용을 출력하였습니다.

프로그램언어 자바(Java)에서의 다차원 배열 사용하기

프로그램언어 자바(Java)에서의 다차원 배열은 배열 안에 또 다른 배열을 포함하는 형태로 사용됩니다. 이를 통해 행렬(matrix)이나 표와 같은 2차원 데이터를 효과적으로 다룰 수 있습니다.

예를 들어, 2차원 배열을 선언하고 초기화하는 방법은 다음과 같습니다:


int[][] twoDimArray = new int[3][4];
twoDimArray[0][0] = 1;
twoDimArray[0][1] = 2;
// 나머지 요소들도 초기화

위 예제에서는 3행 4열의 2차원 배열을 선언하고 첫 번째 행의 일부 요소를 초기화하는 방법을 보여줍니다. 다차원 배열의 각 요소에 접근할 때는 인덱스를 이용하여 원하는 위치의 값을 읽거나 쓸 수 있습니다.

또한, 다차원 배열을 반복문을 통해 순회하면서 모든 요소에 접근할 수도 있습니다. 예를 들어, 다음은 2차원 배열을 반복문을 사용하여 출력하는 예제 코드입니다:


int[][] twoDimArray = { {1, 2}, {3, 4}, {5, 6} };

for (int i = 0; i < twoDimArray.length; i++) {
    for (int j = 0; j < twoDimArray[i].length; j++) {
        System.out.print(twoDimArray[i][j] + " ");
    }
    System.out.println();
}

위 코드는 2행 2열의 2차원 배열을 생성하고 반복문을 통해 모든 요소를 출력하는 방법을 보여줍니다. 첫 번째 반복문에서는 행을, 두 번째 반복문에서는 열을 순회하면서 각 요소를 출력합니다.

프로그램언어 자바(Java)에서의 컬렉션 프레임워크 이해

자바(Java) 프로그래밍 언어에서 컬렉션 프레임워크는 데이터를 저장하고 관리하는 데 사용되는 핵심 라이브러리입니다. 컬렉션 프레임워크는 다양한 데이터 구조를 제공하여 프로그래머가 데이터를 효율적으로 다룰 수 있도록 도와줍니다.

컬렉션 프레임워크의 핵심 인터페이스에는 List, Set, Map 등이 있습니다. List는 순서가 있는 데이터의 집합을 나타내며, Set은 순서가 없는 데이터의 집합을 나타냅니다. Map은 키-값 쌍의 데이터를 저장하는데 사용됩니다.

예를 들어, List를 사용하여 여러 학생의 성적을 저장하고 관리할 수 있습니다. 아래는 List를 사용한 간단한 예제 코드입니다.


import java.util.ArrayList;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        List scores = new ArrayList<>();
        
        scores.add(85);
        scores.add(90);
        scores.add(75);
        
        for (int score : scores) {
            System.out.println("학생의 성적: " + score);
        }
    }
}

위 예제 코드에서는 ArrayList를 사용하여 성적을 저장하고, for-each 루프를 통해 각 학생의 성적을 출력하고 있습니다.

컬렉션 프레임워크는 데이터를 효율적으로 관리하고 다양한 작업을 수행할 수 있는 다양한 메서드와 기능을 제공합니다. 프로그래머가 데이터를 쉽게 추가, 삭제, 검색할 수 있도록 도와줍니다.

따라서, 자바의 컬렉션 프레임워크를 잘 이해하고 활용한다면 데이터 처리와 관리에 있어서 효율적이고 간편한 방법을 제공받을 수 있습니다.

프로그램언어 자바(Java)에서의 List, Set 사용하기

자바(Java) 프로그래밍 언어에서 List와 Set은 데이터를 저장하고 관리하는 데 사용되는 중요한 컬렉션(Collection) 인터페이스입니다. List는 순서가 있는 데이터의 집합을 나타내며, 중복된 요소를 허용합니다. Set은 중복을 허용하지 않는 데이터의 집합을 나타내며, 순서를 보장하지 않습니다.

List와 Set은 Java의 Collection 프레임워크에 속하며, 다양한 구현체가 제공됩니다. List는 ArrayList, LinkedList, Vector 등이 있고, Set은 HashSet, TreeSet 등이 있습니다. 이러한 컬렉션을 사용하여 데이터를 효율적으로 관리할 수 있습니다.

아래는 List와 Set의 간단한 예제 코드입니다.


import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

public class ListSetExample {
    public static void main(String[] args) {
        // List 예제
        List<String> myList = new ArrayList<>();
        myList.add("Apple");
        myList.add("Banana");
        myList.add("Orange");

        System.out.println("List Elements:");
        for (String fruit : myList) {
            System.out.println(fruit);
        }

        // Set 예제
        Set<String> mySet = new HashSet<>();
        mySet.add("Apple");
        mySet.add("Banana");
        mySet.add("Orange");
        mySet.add("Apple"); // 중복된 요소는 추가되지 않음

        System.out.println("Set Elements:");
        for (String fruit : mySet) {
            System.out.println(fruit);
        }
    }
}

위의 예제 코드에서는 List와 Set을 각각 생성하고 요소를 추가한 후 출력하는 방법을 보여줍니다. List는 순서가 유지되므로 추가된 순서대로 출력되지만, Set은 중복을 허용하지 않기 때문에 중복된 요소가 추가되지 않고 순서도 보장되지 않음을 확인할 수 있습니다.

프로그램언어 자바(Java)에서의 Map 활용과 이해

자바(Java) 프로그래밍 언어에서 Map은 키-값 쌍을 저장하는 자료구조를 나타내는 인터페이스입니다. Map은 key와 value 사이의 매핑을 제공하여, key를 사용하여 value를 검색, 삽입 또는 제거할 수 있습니다. Map은 key의 중복을 허용하지 않으며, 각 key는 최대 하나의 value와 연결됩니다.

Map 인터페이스는 다양한 구현체를 가지고 있으며, 그 중 가장 일반적으로 사용되는 것은 HashMap과 TreeMap입니다. HashMap은 해시 테이블을 기반으로 하여 key-value 쌍을 저장하며, 빠른 검색 속도를 제공합니다. TreeMap은 이진 검색 트리를 기반으로 하여 key들을 정렬된 상태로 유지하며, 정렬된 순서로 key-value 쌍을 저장합니다.

Map을 활용하여 데이터를 저장하고 검색하는 예제 코드를 살펴보겠습니다. 아래의 예제는 HashMap을 사용하여 간단한 학생 정보를 저장하고, 학생의 이름을 키로 활용하여 학생의 성적을 검색하는 예제입니다.


import java.util.HashMap;
import java.util.Map;

public class MapExample {
    public static void main(String[] args) {
        Map<String, Integer> studentGrades = new HashMap<>();

        // 학생 정보 저장
        studentGrades.put("Alice", 95);
        studentGrades.put("Bob", 87);
        studentGrades.put("Charlie", 91);

        // 학생 성적 검색
        String studentName = "Bob";
        if (studentGrades.containsKey(studentName)) {
            int grade = studentGrades.get(studentName);
            System.out.println(studentName + "'s grade: " + grade);
        } else {
            System.out.println("No information found for " + studentName);
        }
    }
}

위 예제 코드에서는 HashMap을 사용하여 학생 이름과 성적을 저장하고, get 메서드를 활용하여 특정 학생의 성적을 검색합니다. containsKey 메서드를 사용하여 특정 학생이 Map에 있는지 확인한 후, get 메서드를 통해 해당 학생의 성적을 가져옵니다.

Leave a Comment