Array 예제1
import java.util.Arrays;
public class Array3 {
public static void main(String[] args) {
// 섞기
int[] numArr = {0,1,2,3,4,5,6,7,8,9};
System.out.println(Arrays.toString(numArr));
for(int i = 0; i < numArr.length; i++) {
int n = (int)(Math.random() * 10); // 0~9중의 한 값을 받는다.
int tmp = numArr[i]; // numArr 첫번째 값을 tmp라는 빈칸에 넣고
numArr[i] = numArr[n]; // numArr 무작의 값을 [i]에 넣고
numArr[n] = tmp; // tmp에 넣었던 첫번째 값을 [n]에 넣어줌
}
System.out.println(Arrays.toString(numArr));
// 위 for문에서 numArr.length를 사용해서
// 배열의 길이만큼만 돌림
// 여기서는 10번 돌아가는데 numArr[i]는 처음에는 첫번째 값
// 그다음은 두번째값에 numArr[n] 무작의 값이 저장되는데 그것이 10번 반복
}
}
Array 예제2
// 배열의 활용1) 총합과 평균
int sum = 0;
double avg = 0f;
int[] score = {100, 88, 100, 100, 90};
for (int i = 0; i < score.length; i++) {
sum= sum + score[i];
}
avg = sum / (float)score.length; // 5로 나눠도 되지만 추가될 수 있으니 score.length를 사용
// (float)를 사용한 이유는 평균값을 구하기 위해 소수점으로 구하려고
System.out.println("총합 :" +sum);
System.out.println("평균 :" +avg);
// 배열의 활용2) 최대값과 최소값
int[] score = {79, 88, 91, 33, 100, 55, 95};
int max = score[0]; // 배열의 첫 번째 값으로 최대값을 초기화한다. (79가 저장)
int min = score[0]; // 배열의 첫 번째 값으로 최소값을 초기화한다. (79가 저장)
for (int i = 1; i < score.length; i++) {// 1부터 시작한 이유는 첫번째를 이미 max, min에 초기화해서 1부터 시작
if(score[i] > max) { // score[i]가 88부터 시작하고 max는 79이니까 '참'
max = score[i]; // score[i] 88이 max에 저장
} else if(score[i] < min) { // 계속 가다가 33을 만나면 거짓이 되니 else if로 건너옴
min = score[i]; // score[i] 33이 min에 저장
}
}
System.out.println("최대값: " + max);
System.out.println("최소값: " + min);