Java 如何比较用户';输入一个对象的属性并获取该对象?

Java 如何比较用户';输入一个对象的属性并获取该对象?,java,string,object,enums,Java,String,Object,Enums,所以我用java编程,我是一个新手,假设我有一个类位置 public class Place{ private String name; } 我有一个类播放器 public class Player{ private Place location; public void goLoc(Place p){ this.location=p; } } 我需要从用户那里得到他们想要去的地方,我正在使用一个enum到我的命令列表,用户可以使用它(go,

所以我用java编程,我是一个新手,假设我有一个
位置

public class Place{
    private String name;
}
我有一个
播放器

public class Player{
    private Place location;

    public void goLoc(Place p){
        this.location=p;
    }
}
我需要从用户那里得到他们想要去的地方,我正在使用一个
enum
到我的命令列表,用户可以使用它(go,HELP…等等),所以假设我有这两个
对象

Place r = new Place("Room");
Place r2 = new Place("Room2");
当用户进入例如go room时,我需要调用
方法
goLoc(r)
,但我使用
字符串存储用户输入的

Scanner in = new Scanner(System.in);
String loc = in.next();
如何通过其
属性
名称
获取
r
对象
?或者还有其他更好的方法吗?

final List places=Arrays.asList(r,r2);
final List<Place> places = Arrays.asList(r, r2);
final Place selectedPlace = places.stream()
          .filter(p -> p.getName().equals(loc))
          .findFirst()
          .orElse(null);
最终地点selectedPlace=places.stream() .filter(p->p.getName().equals(loc)) .findFirst() .orElse(空);
的所有对象存储在列表中,并使用流API