배열

FinalForever·2025년 11월 18일

배열(array)은 인덱스(index)와 인덱스에 대응하는 일련의 데이터들로 이루어진 연속적인 자료 구조로서, 배열에는 같은 종류의 데이터들이 순차적으로 저장된다.

배열 선언

int intArray [ ];
배열 타입/ 배열에 대한 레퍼런스 변수/ 배열 선언

배열 생성

int Array = new int [5];
배열에 대한 레퍼런스 변수/ 배열 생성/ 타입/ 원소 개수

10개의 정수 공간을 가진 배열을 생성

int i[] = new int[10];

그리고 for문을 사용하여 간단히 10개의 정수의 합을 구할수 있다.

for(sum=0; n=0; n++)
sum += i[n];

예제

import java.util.*;

public class ArrayAccess {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		int intArray[];		//배열에 대한 레퍼런스 선언
		intArray = new int[5];		// 배열 생성
		int max=0;		// 현재 가장 큰 수 
		System.out.println("양수 5개를 입력하세요.");
		for(int i=0; i<5; i++) {
			intArray[i] = sc.nextInt();		// 입력받은 정수를 배열에 저장
		if(intArray[i] > max)				// 입력받은 수가 현재 제일 크면
			max=intArray[i];				// max 변경
		}
		
		System.out.println("가장 큰 수는 " + max + "입니다.");
		
		sc.close();
	}

}

배열과 for-each문

for 문을 변형한 for-each 문은 배열이나 나열(enumeration)의 크기만큼 루프를 돌면서, 각 원소를 순차적으로 접근하는데 매우 유용하며 일반적인 구조는

for(변수 : 배열 레퍼런스) {
. . 반복작업문 . . }

int [] n = {1,2,3,4,5};
int sum = 0;
for(int k : n) {	//n.length 만큼 반복
// 반복될 때마다 k는 n[0], ..., n[4]로 번갈아 설정
	sum += k;
}

예제

public class foreachEx {
	public static void main(String[] args) {
		int [] n = {1,2,3,4,5};
		int sum=0;
		for(int k : n) {	// k는 n[0], n[1], ..., n[4]
			System.out.print(k + " ");	// 반복되는 k 값 출력
		sum += k;
		}
		System.out.println("합은" + sum);
		
		String f[] = {"사과", "배", "바나나", "체리", "딸기", "포도"};
		for(String s : f) 
			System.out.print(s + " ");
	}

}

ps. 백준배열부터 조금 어려워지기 시작했다. . . 골드랑 플레까지 가신분은 어떻게 하신거지 ㅜㅁㅜ
ai의 의존하고 싶지않아서 알고리즘 열심히 해보자 하는데 점점벽이 느껴진다. . .

profile
No More Struggle & Machine Mind

0개의 댓글