关于如何让判断集合中是否包含某个元素
通常情况,集合内都是由多个对象组成的,并不是单个单个的元素组成,更类似于二维数组。
但是有些时候,却需要我们判断集合内包不包含某个元素,并不是某个对象。
如:集合 list = { {小明,18,1.80},{小美,17,1.60},{小李,19,1.75}}
判断集合内是否有小李。
集合内部给的有内置函数 “ArrayList.contains(object o )”,但是这个函数只能获取到第一层,也就是获取到某个对象,类似于二维数组的列标(arr[][]的第一个[])。
这样的代码几乎是无用代码,因为根本不可能匹配。
我们想要获取到的是第二层的(arr[][]的第二个[])。该如何获取呢?
我考略过用直接用集合.get(i).某元素。
但效果也并不好,因为直接用一个元素,来判断这个元素内是否包含你输入的元素。
这样你输入的内容中有获取到元素的某个字符都会判断有该元素。
如:carList.get(i).getId().contains(buyId)获取到了admin,如果你输入的是a,ad,adm,admi,admin 中的任意一个,都算是匹配上了。这显然是不对的。
那怎么办呢?
要想获得第二层的数据,又得用到循环遍历了。
所以得两层循环,第一层来获取对应的对象,第二层来获取该对象对应的元素。
例子:
目前用这个方法解决了某个集合内是否包含某元素的问题。
但是目前这个方法不成熟,我也没太大把握,感觉不是很优。在获取第一层的对象又得用到if来判断是否匹配。所以是个繁琐的嵌套过程。
如果以后学会更好的方法,得再来添加更优的发发。
标签:判断,包含,获取,元素,某个,集合 From: https://www.cnblogs.com/Xyer/p/17185952.html