다음 코드에서 방법 2에서 원래 배열이 변경되었지만 arr2 [0]가 1.5와 왜 같습니까? 다른 배열과 변수를 무시하십시오.참조에 의한 배열 및 전달
public class Problem3
{
public static int method1(int[] array)
{
array[0] += 10;
return array[0];
}
public static int method2(int aNum, String aStr,
int[] array1, float[] array2, int[] array3)
{
float[] fNums = {1.5F, 2.5F};
array2 = fNums;
return 10 + method1(array3);
}
public static void main(String[] args)
{
int num = 1000;
String aStr = "Hello!";
int[] arr1 = {1, 2, 3};
float[] arr2 = {0.5F, 1.5F};
int[] arr3 = {5, 6, 7};
int retNum = method2(num, aStr, arr1, arr2, arr3);
System.out.println(arr2[0]);
}
}
기본적으로 대답은 1.5라고 생각했지만 해결책은 0.5라고 말하면서 누군가 설명 할 수 있는지 궁금합니다. –
이 답변보기 http://stackoverflow.com/a/9404727/597657 –
Java에서 참조로 전달할 수 없습니다. – newacct