명품 자바 Programming
Chapter4 Ex3
Q :
다음 두 개의 static 메소드를 가진 ArrayUtility 클래스를 만들어보자. ArrayUtility 클래스를 이용하는 테스트용 프로그램도 함께 작성하라.
static double [] intToDouble(int [] source); // int 배열을 double 배열로 변환
static int [] doubleToInt(double [] source); // double 배열을 int 배열로 변환
Solution
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | package chap4ex; import java.util.Scanner; class ArrayUtility{ static int len; static double [] intToDouble(int [] source){ len = source.length; //배열의 길이 저장 double [] newArray = new double[len]; for(int i = 0; i < len; i++){ //원래 배열의 원소들을 형변환시켜 새 배열에 저장 newArray[i] = (double)source[i]; } return newArray; //새로운 배열 반환 } static int [] doubleToInt(double [] source){ len = source.length; int newArray[] = new int[len]; for(int i = 0; i< len; i++){ newArray[i] = (int)source[i]; } return newArray; } } public class q3 { public static void main(String[] args) { Scanner in = new Scanner(System.in); int [] test1 = new int[5]; double []test2 = new double[5]; double [] newArray1; // 정수를 실수로 바꾸는 메소드의 반환배열을 저장할 것 int [] newArray2; ArrayUtility ex = new ArrayUtility(); System.out.println("정수 5개를 입력하라"); for(int i = 0 ; i<5; i++){ test1[i] = in.nextInt(); } System.out.println("실수 5개를 입력하라"); for(int i = 0 ; i<5; i++){ test2[i] = in.nextDouble(); } newArray1 = ex.intToDouble(test1); // test1배열을 실수로 바꾸고 반환된 배열을 새 배열에 저장한다. System.out.println("정수를 실수로 바꾼 배열"); for(int i = 0 ; i < newArray1.length; i++){ System.out.print(newArray1[i] + " "); if(i == newArray1.length-1) System.out.println(""); } newArray2 = ex.doubleToInt(test2); // test2배열을 정수로 바꾸고 반환된 배열을 새 배열에 저장한다. System.out.println("실수를 정수로 바꾼 배열"); for(int i = 0 ; i < newArray2.length; i++){ System.out.print(newArray2[i] + " "); if(i == newArray2.length-1) System.out.println(""); } } } | cs |
Key Point
원래의 배열 원소를 형변환하여 변환할 자료형의 배열에 저장한다.
유용하셨다면 공감 버튼 ↓ 눌러주세요!
728x90
'# Language > Java' 카테고리의 다른 글
명품 JAVA 프로그래밍 4장 6번 (2) | 2018.07.20 |
---|---|
명품 JAVA 프로그래밍 4장 5번 (0) | 2018.07.20 |
명품 JAVA 프로그래밍 4장 4번 (0) | 2018.07.20 |
명품 JAVA 프로그래밍 4장 2번 (0) | 2018.07.20 |
명품 JAVA 프로그래밍 4장 1번 (0) | 2018.07.20 |
명품 JAVA 프로그래밍 4장 OpenChallenge (0) | 2018.07.20 |
명품 JAVA 프로그래밍 3장 12번 (0) | 2018.07.20 |