printf("%c의 블로그", 'Molkka');

코딩공부/JAVA

[java] 배열

mol_kka 2021. 12. 27. 13:05

 

1. java 배열 개념, 값 입력받아서 배열 만들기, 배열에서 가장 큰 값 찾기(max)

import java.util.Scanner;

public class ArrayExample {

	public static void main(String[] args) {
		int arr01[]; // 정수만 집어넣는 배열
		int[] arr02; // 앞에 써도 됨
		int arr03[] = new int[10]; // 갯수 10개 지정
		int arr04[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; // 갯수 상관없음
//		int arr05[10]; // 이건 아님

		arr03[0] = 10;
		arr03[1] = 20;
		arr03[2] = 30;
		arr03[3] = 40;
		arr03[4] = 50; //갯수 먼저 지정하고 나중에 값 입력하기
		System.out.println(arr03[3]); //40

//		System.out.println(arr03[10]); // 오류: 0~9 인덱스만 존재

		System.out.println(arr04[3]); //4

		// 정수 5개 입력 받아서 배열로 만들어보기
		Scanner scan = new Scanner(System.in);
		int numArray[] = new int[5];
		int total = numArray.length;
		int max = 0;
		for (int i = 0; i < total; i++) {
			System.out.print(">>");
			numArray[i] = scan.nextInt();
			max = max > numArray[i] ? max : numArray[i];
		}
		System.out.println(numArray[2]); // 세번째 값 출력
		System.out.println(max); // 가장 큰 값 출력

	}

}

 

 

 

2. java 배열 값 더해서 평균 구하기

import java.util.Scanner;

public class ArrayExample02 {

	public static void main(String[] args) {
		// 5개짜리 배열 입력받아서 만들고 평균 출력하기
		Scanner scan = new Scanner(System.in);
		int num[] = new int[5];
		int sum = 0;
		double avg = 0;
		for (int i = 0; i < num.length; i++) {
			num[i] = scan.nextInt();
		}
		for (int item : num) {// 배열 전용 반복문, item은 값(index 아님주의)
			sum += item;
		}
		avg = (double) sum / num.length;
		System.out.println(avg);

		String fruits[] = { "orange", "grapes", "banana", "kiwi" };
		for (String item : fruits) {
			System.out.print(item + "==");
		}
	}

}

 

 

 

3. java 배열 (이중배열, 계단식배열, 비정방형배열)

public class ArrayExample03 {

	public static void main(String[] args) {
		int arr01[][] = new int[2][3]; // 이중배열
		int arr02[][] = { { 10, 20, 30 }, { 100, 200, 300 } };
		System.out.println(arr02.length); // 2
		System.out.println(arr02[0].length); // 3

		// 계단식 배열
		int stepArray[][];
		stepArray = new int[4][];
		stepArray[0] = new int[1];
		stepArray[1] = new int[2];
		stepArray[2] = new int[3];
		stepArray[3] = new int[4];

		int stepArray02[][] = { { 0 }, { 1, 2 }, { 3, 4, 5 }, { 6, 7, 8, 9 } };
		for (int i = 0; i < stepArray02.length; i++) {
			for (int j = 0; j < stepArray02[i].length; j++) {
				System.out.print(stepArray02[i][j] + ",");
			}
			System.out.println();
		}
//		10,11,12
//		20,21
//		30,31,32
//		40,41
//		비정방형 배열
		int irregularArr[][] = new int[4][];
		irregularArr[0] = new int[3];
		irregularArr[1] = new int[2];
		irregularArr[2] = new int[3];
		irregularArr[3] = new int[2];
		int item01 = 10;
		int item02 = 0;
		for (int i = 0; i < irregularArr.length; i++) {
			for (int j = 0; j < irregularArr[i].length; j++) {
//				irregularArr[i][j] = item01 + item02;
				item02++;
				System.out.print(irregularArr[i][j] + ", ");
			}
			item01 += 10;
			item02 = 0;
			System.out.println();
		}
		for(int i=0;1<10;i++) {
			//stack overflow
		}
	}

}