数组的索引以及索引的使用,此题应该注意不是得到的数,而是得到的数在数组中的位置
/**
*在数组中找到两个元素,相加后等于给定目标数,
*确定这两个数的位置(最先找到的一组)
*并将这两个数以新数组的方式返回
*数组{2,3,5,9,6,7,1,4}
*目标数:8
*/
public void MyArray{
public int[] sum(int[] arr) {
// 给定目标数
int target = 8;
// 新数组只有两个数,给定数组长度
int[] arr2 = new int[2];
// 遍历所给的数组里面的元素,得到两个相加等于目标数的数
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr.length; j++) {
if (target == arr[i] + arr[j]) {
// 将得到的两个数赋值给新数组
arr2[0] = i;
arr2[1] = j;
return arr2;
}
}
}
return arr2;
}
public static void main(String[] args) {
//给一个数组,调用方法计算
int[] arr = { 2, 3, 5, 9, 6, 7, 1, 4 };
int[] position = new MyArray().sum(arr);
System.out.println(position[0] + " " + position[1]);
}
}