我已经用Python编写了几个月的代码,现在我因为工作原因而不得不切换到Java。我的问题是,有一种方法来模拟这种陈述
if var_name in list_name:
# do something
没有定义额外的isIn()
- 类似布尔函数来扫描list_name
以查找var_name
?
答案 0 :(得分:12)
您正在寻找继承自List#contains
的Collection#contains
(因此您也可以将其与Set
个对象一起使用)
if (listName.contains(varName)) {
// doSomething
}
List#contains
如果此列表包含指定的元素,则返回true。更多 正式地,当且仅当此列表包含至少一个时才返回true 元素e使得(o == null?e == null: o.equals(e))。
如您所见,List#contains
使用equals
返回true或false。强烈建议您在创建的课程中使用@Override
此方法以及hashcode
。
答案 1 :(得分:3)
您可以使用List.contains(object),但要确保您用于创建列表的类正在实现等于正确的等于检查。否则,只有当对象本身相同时,才能获得两个相等的对象。
答案 2 :(得分:2)
如果此列表包含指定的元素,则java.util.ArrayList.contains(Object)方法返回true。
List list=new ArrayList();
list.add(1);
list.add(2);
if(list.contains(2)){
//do something
}
答案 3 :(得分:1)
列表数据结构的包含方法就是你所追求的。您可以通过以下两种方式之一使用此方法:
,
或
double[][] termom = File.ReadLines(fD.FileName)
.Select(l => l.Split(';', ',') // ',' is a deriver as well as ';'
.Select(n => double.Parse(n, CultureInfo.InvariantCulture))
.ToArray())
.ToArray();
像在Yasin的回答中一样。
有关详细信息,请参阅 tutorial point 或official documentation