My collect() function calls Foo.f(). I would like to make Foo.f() itself a parameter of my function. Is this possible in Java?
- How can I pass either
Foo.f()orFoo.g()(or any other function ofFoothat returns aString) to my function? - Is there an already existing function which walks a collection and collects the result of calling a method of every collection item?
.
class Foo {
public String f() { return "f"; }
public String g() { return "g"; }
// ...
}
public List<String> collect(List<Foo> foos)
{
List<String> result = new ArrayList<String>();
for (final Foo foo: foos) {
result.add(foo.f()); // I want Foo.f to be a parameter
}
return result;
}
Update
I would like to point out the fact that I am not merely calling the same function but rather the member function f for all items of the List<Foo> collection.