int형 1차원 배열을 매개변수로 전달받아서 배열에 저장된 최대값, 최소값을 찾아서
반환하는 메소드를 각각 다음의 형태로 정의하자
public static int minValue(int[] arr);
public static int maxValue(int[] arr);
단 반복문을 사용할때 minValue 정의는 일반적인 for문
maxValue의 정의에서는 for-each문을 사용하자
--------------------------------------------------------------------
public class ArrayTest {
public static int minValue(int[] arr){
int result = arr[0];
for(int i = 0; i < arr.length; i++)
if(result > arr[i])
result = arr[i];
return result;
}
public static int maxValue(int[] arr){
int result = 0;
for(int i : arr)
if(result < i)
result = i;
return result;
}
public static void main(String[] args) {
int[] ar = {10,20,30,40,50};
System.out.println("최소값 : "+minValue(ar));
System.out.println("최대값 : "+maxValue(ar));
}
}
최소값 : 10
최대값 : 50
다음 메소드 int형 1차원 배열에 저장된 값을 두번째 매개변수로 전달된 값의
두번째 매개변수로 전달된 값의 크기만큼 전부 증가시킨다
public static void addOneDArr(int[] arr, int add){
for(int i = 0; i < arr.length; i++)
arr[i] += add;
}
위 메소드를 호출하는 형태로, int형 2차원 배열에 저장된 값 전부를 두번째 매개변수로
전달된 값의 크기만큼 증가시키는 메소드를 다음의 형태로 정의하자.
public static void addTwoDArr(int[][] arr, int add){
}
------------------------------------------------------------------------
public class arrtest {
public static void addOneDarr(int[] arr, int add){
for(int i = 0; i < arr.length; i++) {
arr[i] += add;
}
}
public static void addTwoDarr(int[][] arr, int add){
for(int i = 0; i < arr.length; i++)
addOneDarr(arr[i],add);
}
public static void main(String[] args) {
int[][] cha = {
{10,20,30},
{40,50,60}
};
for(int i = 0; i < cha.length ;i++){
for (int j = 0; j < cha[i].length; j++){
addTwoDarr(cha,100);
System.out.print(cha[i][j] + "\t");
}
System.out.println();
}
}
}
110 220 330
440 550 660
다음 형태로 표현된 2차원 배열이 존재한다고 가정해보자.
1 2 3 1행
4 5 6 2행
7 8 9 3행
이러한 형태를 갖는 int형 2차원 배열이 인자로 전달되면, 다음의 형태로 배열의 구조를
변경시키는 메소드를 정의하자.
7 8 9 3행이 2행으로
1 2 3 1행이 2행으로
4 5 6 2행이 3행으로
public class arrtest2 {
public static void chaos(int[][] arr) {
int[] last = arr[arr.length-1];
for(int i = arr.length-1; i >0; i--)
arr[i] = arr[i-1];
arr[0] = last;
}
public static void main(String[] args) {
int[][] arr = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
chaos(arr);
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr[i].length; j++) {
System.out.print(arr[i][j]);
}
System.out.println();
}
System.out.printf("==========================================================\n");
chaos(arr);
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr[i].length; j++) {
System.out.print(arr[i][j]);
}
System.out.println();
}
}
}
789
123
456
==========================================================
456
789
123