영상
문제
package 배열7_문제;
/*
[문제]
arr배열과 input배열의 값을 비교한다.
서로 같은 값이 있는지 체크한다.
input과 arr이 서로 같은 값이 있는 arr의 인덱스를 b배열에 저장한다.
반면 input배열의 값이 arr에 없으면 -1을 저장한다.
[정답]
b = {2, 3, -1, 0, -1}
*/
public class 배열7_문제02_배열비교_문제 {
public static void main(String[] args) {
int[] input = {30, 40, 1, 10, 2};
int[] arr = {10, 20, 30, 40};
int[] b = {-1, -1, -1, -1, -1};
}
}
Java
복사
해설
package 배열7_문제;
import java.util.Arrays;
/*
[문제]
arr배열과 input배열의 값을 비교한다.
서로 같은 값이 있는지 체크한다.
input과 arr이 서로 같은 값이 있는 arr의 인덱스를 b배열에 저장한다.
반면 input배열의 값이 arr에 없으면 -1을 저장한다.
[정답]
b = {2, 3, -1, 0, -1}
*/
public class 배열7_문제02_배열비교_정답 {
public static void main(String[] args) {
int[] input = {30, 40, 1, 10, 2};
int[] arr = {10, 20, 30, 40};
int[] b = {-1, -1, -1, -1, -1};
/*
i = 0
check = -1
j = 0 30 == arr[0] false
j = 1 30 == arr[1] false
j = 2 30 == arr[2] true check = 2 break
b[0] = 2
i = 1
check = -1
j = 0 40 == arr[0] false
j = 1 40 == arr[1] false
j = 2 40 == arr[2] false
j = 3 40 == arr[3] true check = 3
b[1] = 3
...
*/
for(int i=0; i<input.length; i++) {
int check = -1;
for(int j=0; j<arr.length; j++) {
if(input[i] == arr[j]) {
check = j;
break;
}
}
b[i] = check;
}
System.out.println(Arrays.toString(b));
}
}
Java
복사