0

我正在查看这段代码,无法理解 .add 语句在做什么(fromCity)和(toCity)只是字符串?

getDestinations(fromCity).add(toCity);

方法:

public ArrayList<String> getDestinations(String fromCity)
4

5 回答 5

3

getDestinations(fromCity)返回一个ArrayList

add方法是向其添加元素的数组列表方法。

换句话说:

ArrayLisst<String> destList = getDestinations(fromCity);
destList.add(toCity);
于 2012-10-26T21:43:10.100 回答
2

它将字符串添加toCityArrayList<String>返回的getDestinations(fromCity).

于 2012-10-26T21:43:31.890 回答
2

这被称为chaining of method calls。您正在对前一个方法的返回值调用下一个方法。

因此,该getDestinations()方法返回您 a ArrayList,现在您不是存储您的返回值,而是在方法调用上调用 的add方法ArrayList

getDestinations(fromCity).add(toCity);

这相当于: -

ArrayList<String> list = getDestination(fromCity) // returns `ArrayList - list`
list.add(toCity) // invoke `add` method on returned arraylist.

同样,您可以将方法调用链接到任何 lavel:-

meth1(parameter1).meth2(param3).meth3(param3);
于 2012-10-26T21:47:12.360 回答
1

.add()不附加到,fromCity而是附加到方法调用getDestinations(fromCity)
从方法声明中您可以看到它getDestinations(String fromCity)返回一个ArrayList,并且它们有一个add()方法。

于 2012-10-26T21:43:15.777 回答
1

请检查

public ArrayList<String> getDestinations(String fromCity)

-返回一个可以有一组字符串的ArrayList *

getDestinations(fromCity).add(toCity);

---这里调用getdestination它返回arraylist并添加一个String(fromcity)到arraylist

于 2012-10-26T21:46:26.190 回答