개발일기

JAVA | 배열 정렬하기

삐삐들의 주인 2023. 1. 31. 10:34
package FirstPackage;

import java.util.Arrays;
import java.util.Scanner;

public class Date1005 {

	public static double[] num1 = new double[10];
	public static double[][] m = new double[3][3];

	public static void main(String[] args) {
		System.out.println("start");
		Scanner scanner = new Scanner(System.in);

		for (int i = 1; i < 10; i++) {
			double num = scanner.nextDouble();
			num1[i] = num;
			SortRow(m);
		}

		System.out.println("the row sorted array is:");
		sortedRow();

	}

	public static double[][] SortRow(double[][] m) {
		int count = 1;
		for (int i = 0; i < m.length; i++) {
			for (int j = 0; j < m.length; j++) {
				m[i][j] = num1[count];
				count++;
			}

		}
		return m;
	}

	public static void sortedRow() {

		for (int i = 0; i < m.length; i++) {
			Arrays.sort(m[i]);
		}

		System.out.println(m[0][0] + " " + m[0][1] + " " + m[0][2]);
		System.out.println("----------------");
		System.out.println(m[1][0] + " " + m[1][1] + " " + m[1][2]);
		System.out.println("----------------");
		System.out.println(m[2][0] + " " + m[2][1] + " " + m[2][2]);

		System.out.println("end");

	}

}

m[i] 끼리 정렬을 해야 하는 문제였다. 

num[i]에 스캐너로 입력한 걸 저정하게 되니 SortRow메소드에서 값을 옮겨 저장할 때 마지막 숫자만 저장되서 count++를 해주었다.

배열이 [3][3]으로 저장된게 아니라는 가정 하에 코드를 짰다면 arraylist를 써야 했을까 하는 생각도 든다