2017-04-19 40 views
0

这是代码如何从ArrayList中包含的对象获取所有子字段?

public class SomeObject 
{ 
    private String _name; 

    public String get_name() { 
     return _name; 
    } 
} 

public class SomeObjectContainer { 
    private ArrayList<SomeObject>_objects; 

    public ArrayList<SomeObject> get_objects() { 
     return _objects; 
    } 
} 

我的问题:

  1. 我想实现SomeObjectContainer一些方法返回一个数组将包含所有的_objects._name。 有没有一些简单的方法来做到这一点,而无需创建新的数组,并扫描_objects集合中每个对象的所有__对象并扫描所有_objects?

  2. 如果我已经有这个数组[字符串] - 有没有什么办法(可能在Java语法),使我的工作更容易找到如果这个数组包含一些特定的字符串?

回答

1

有您必须使用java的8个流像下面一个简单的方法:

List<String> names= someObjects.stream().map(SomeObject::get_name).collect(Collectors.toList()); 

,如果你想知道这个列表中包含特定字符串做如下:

if(names.contains("some string")) 
{ 
    //do what you wanna do here 
} 
相关问题