【发布时间】:2017-09-08 01:15:33
【问题描述】:
我重写了 toString 方法,以便我的对象返回它们的 ID(我在对象中设置的参数。
@Override
public String toString(){
return getId();
}
我遇到的问题是,我正在搜索包含对这些对象的引用的列表,并且我希望能够在 X 对象存在时执行某些操作。
为了做到这一点,我需要我的程序能够将返回的对象 ID 解释为字符串,因为我正在进行比较(以检查它是否存在)。
所以我的问题是,如何将对象引用转换为字符串以便进行比较。还是有更好的方法可以做到这一点?
【问题讨论】:
-
一时还不太清楚你想做什么...
-
如果您有对象列表并且需要根据对象属性过滤列表,您可以使用流:
list.stream().filter(obj -> X.equals(obj.getId())).foreach(System.out::println) -
什么意思?对象本身没有名称。变量有名称,变量是对对象的引用。无法从对象中获取引用该对象的变量的名称。如果您认为这是您需要的,那么您很可能对变量和对象有误解,还有其他更好的方法可以解决您的问题。
-
问题不是很清楚,但没有必要为您想要实现的目标覆盖
toString(我认为)。 Check the HashMap documentation 我认为这将解决您正在尝试做的事情 -
你想比较他们的身份证号码吗?因为您只是返回他们的 ID 号.. 当您调用覆盖的
toString方法时,
标签: java string object comparison