我是java的新手。我创建了以下两个用于添加城市的类(此处显示了部分代码):
public class TourManager {
// Holds our cities
private static ArrayList destinationCities = new ArrayList<City>();
// Adds a destination city
public static void addCity(City city) {
destinationCities.add(city);
}
}
public class Tour{
// Holds our tour of cities
private ArrayList tour = new ArrayList<City>();
// Constructs a blank tour
public Tour(){
for (int i = 0; i < TourManager.numberOfCities(); i++) {
tour.add(null);
}
}
public ArrayList getTour(){
return tour;
}
}
现在我创建了以下两个旅游类对象:
Tour currentSolution = new Tour();
Tour newSolution = new Tour(currentSolution.getTour());
我声明了两个函数如下:
void Fuction1(Tour newSolution);
void Fuction2(Tour newSolution);
我想将newsolution对象作为参数传递给上述两个函数,以便我们可以操纵这两个函数中的原始对象所以,真的说,我想传递参考价值。现在如果我按以下方式传递它:
Function1(newsolution);
Function2(newsolution);
它会改变这两个函数中的原始对象吗?如果没有,那么这样做的正确方法是什么?