배열값 입력받아 최소값,최대값,평균구하고 출력하기
관건 - for문을 적절히 활용, Arrays.toString(배열이름) 활용법
import java.util.Arrays;
import java.util.Scanner;
class Exam{
public static void main(String[] args) {
int[] grades = new int[5];
Scanner scan_grades = new Scanner(System.in);
int sum=0;
for(int i=0;i<grades.length;i++){
System.out.println(i+"번째 값을 입력하세요:");
grades[i]=scan_grades.nextInt();
sum+=grades[i];
}
int max=0, min=0;
for(int j=0;j<grades.length-1;j++){
if(grades[j]>max){
max=grades[j];
if(grades[j]<min){
min=grades[j];
}
}
}
System.out.println("당신이 입력한 모든값은 ");
System.out.println(Arrays.toString(grades)); //배열안에 있는 모든값을 출력해주는 메소드
System.out.println("최소값은"+min+"최대값은"+max);
System.out.println("평균값은"+(float)sum/grades.length);
}
}
다차원 배열을 다중루프를 이용하여 출력하기
import java.util.Arrays;
class Exam{
public static void main(String[] args) {
int[][] arr = new int [5][];
arr[0] = new int[1];
arr[1] = new int[2];
arr[2] = new int[3];
arr[3] = new int[4];
arr[4] = new int[5];
int num=0;
for(int i=0;i<arr.length;i++){
int []tempArr = arr[i];
for(int j=0;j<tempArr.length;j++){
tempArr[j] = ++num;
}
}
for(int[] tempArr:arr){
System.out.println(Arrays.toString(tempArr));
}
}
}
출력값:
[1]
[2, 3]
[4, 5, 6]
[7, 8, 9, 10]
[11, 12, 13, 14, 15]
System.arraycopy()를 이용하는 손쉬운 배열복사!!^^
System.arraycopy([원본배열],[원본의 복사 시작 인덱스 번호],[대상 배열],[대상 배열의 복사 시작 인덱스 번호],[개수기])
import java.util.Arrays;
class Exam{
public static void main(String[] args) {
int[] arr = {1,2,3,4,5};
int[] temp = {1,2,0,0,0};
System.arraycopy(arr, 2, temp, 2, 3);
System.out.println(Arrays.toString(arr));
System.out.println(Arrays.toString(temp));
}
}
배열의 루프처리 (배열을 순서대로 복사하고 싶을때)
-인덱스번호를 따로 처리하지 않을때 foreach문을 사용하는데 만약
루프가 돌때마다 특정 인덱스에 값을 다르게 넣어야 한다거나 할경우는 적합하지 않음^^
class Exam{
public static void main(String[] args) {
int[]arr = {10,20,30,40};
for(int value:arr){ //foreach문을 이용한다.
System.out.println(value);
}
ArraytoString - 배열안의 데이터를 문자열로 변경해주어 배열안 데이터를 좀더쉽게 확인할 수 있다.
ArraytoString의 또다른 기능-Sort기능
int[] arr ={100,91,30,30,40,50};
System.out.println(Arrays.toString(arr));
Arrays.sort(arr); //정렬정렬!
System.out.println(Arrays.toString(arr));
출력값:
[100, 91, 30, 30, 40, 50]
[30, 30, 40, 50, 91, 100]
'Not Using > JAVA' 카테고리의 다른 글
예제놀이_점수입력받고 평균값내서 학점매기기 (0) | 2012.02.14 |
---|---|
예외처리! 던지기!!뾰뾷! (0) | 2011.12.21 |
JAVA의 예외처리 (0) | 2011.12.21 |
API에서 알아두면 좋을 클래스2 (0) | 2011.12.21 |
API에서 알아두어야할 클래스 (0) | 2011.12.20 |