我构建的Java代码有两个方法,其中有3个数组,第一个方法的3个数组在调用后会相应地更新,调用第二个方法后,第一个方法中发生的更改不会在第二个方法中表示。
例如:
public class ticket_reservation {
public static int [][] method1(){
int [] array1 = { 1, 2, 3};
int [] array2 = { 4, 5, 6, 7};
int [] array3 = { 8, 9, 10, 11, 12};
//code that involve the above 3 arrays
int [][] array = { array1, array2, array3};
return array;
}
public static int [][] method2(){
int [] array1 = { 1, 2, 3};
int [] array2 = { 4, 5, 6, 7};
int [] array3 = { 8, 9, 10, 11, 12};
//code that involve the above 3 arrays
int [][] array = { array1, array2, array3};
return array;
}
public static void main(String [] args) {
int [] array1 = { 1, 2, 3};
int [] array2 = { 4, 5, 6, 7};
int [] array3 = { 8, 9, 10, 11, 12};
int [][] method1_array = method1();
//code to make the 2D method1_array into 3 single dimention arrays
int [][] method2_array = method2();
//code to make the 2D method2_array into 3 single dimention arrays
//this is where the problem arise. as the changes i made in the first method don't
//show in the second method
}
}
我发现很难在这里找到解决方案,因为我希望我在第一个方法中所做的更改也能在第二个方法中进行。我试图在不使用数组的情况下用方法编写代码,但发现很困难。
1条答案
按热度按时间wlp8pajw1#
如果阵列是一个共享资源,那么你就需要共享它们。你可以用很多方法来实现这一点。
main
),并使用类示例。main
方法中定义数组,然后将其作为参数传递给使用它的那些方法。