如何使用属性名搜索java对象列表
我有一张如下的地图如何使用属性名搜索java对象列表,java,list,search,map,arraylist,Java,List,Search,Map,Arraylist,我有一张如下的地图 Map<String,Integer> map = new HashMap<String, Integer>(); map.put("one",1); map.put("two",2); 我有一张单子 List<TestVO> list = new ArrayList<TestVO>(); TestVO vo1 = new TestVO(); vo1.setId(1); vo1.setName("one"); T
Map<String,Integer> map = new HashMap<String, Integer>();
map.put("one",1);
map.put("two",2);
我有一张单子
List<TestVO> list = new ArrayList<TestVO>();
TestVO vo1 = new TestVO();
vo1.setId(1);
vo1.setName("one");
TestVO vo2 = new TestVO();
vo2.setId(2);
vo2.setName("two");
list.add(vo1);
list.add(vo2);
List List=new ArrayList();
testvovo1=新的TestVO();
vo1.setId(1);
vo1.集合名(“一”);
testvovo2=新的TestVO();
vo2.setId(2);
vo2.设置名称(“两个”);
列表。添加(vo1);
列表。添加(vo2);
如果我想从这个名为“one”的列表中搜索,我需要迭代这个列表。有什么简单的方法可以找到这个吗
我找到了这个
但是还有其他简单的方法吗?请提前感谢…在哈希映射中搜索数据的复杂性为O(1),其中列表的复杂性为O(N)。
因此,不幸的是,答案是您必须迭代列表。这就是为什么选择合适的数据结构是如此重要。在哈希映射中搜索数据的复杂性为O(1),而在列表中则为O(N)。
因此,不幸的是,答案是您必须迭代列表。这就是为什么选择合适的数据结构是如此重要。在哈希映射中搜索数据的复杂性为O(1),而在列表中则为O(N)。
因此,不幸的是,答案是您必须迭代列表。这就是为什么选择合适的数据结构是如此重要。在哈希映射中搜索数据的复杂性为O(1),而在列表中则为O(N)。
因此,不幸的是,答案是您必须迭代列表。这就是为什么选择合适的数据结构如此重要。您是否尝试过使用
Collections.binarySearch(list,“one”)代码>?@Linus“one”是TestVO类的名称属性。TestVO的实例存储在列表中。您是否阅读了链接的问题?@R.J我看到了标记的答案标记的答案并不意味着这是最好的答案。这意味着有标记的答案帮助OP解决了他们的问题,但并不意味着其他答案是错误的。如果你读过其他答案,你会看到它,如果你不受任何条款的约束,不使用第三方库,那么我提出的答案很可能就是你的解决方案。为什么不试试呢?你有没有试过使用Collections.binarySearch(list,“one”)代码>?@Linus“one”是TestVO类的名称属性。TestVO的实例存储在列表中。您是否阅读了链接的问题?@R.J我看到了标记的答案标记的答案并不意味着这是最好的答案。这意味着有标记的答案帮助OP解决了他们的问题,但并不意味着其他答案是错误的。如果你读过其他答案,你会看到它,如果你不受任何条款的约束,不使用第三方库,那么我提出的答案很可能就是你的解决方案。为什么不试试呢?你有没有试过使用Collections.binarySearch(list,“one”)代码>?@Linus“one”是TestVO类的名称属性。TestVO的实例存储在列表中。您是否阅读了链接的问题?@R.J我看到了标记的答案标记的答案并不意味着这是最好的答案。这意味着有标记的答案帮助OP解决了他们的问题,但并不意味着其他答案是错误的。如果你读过其他答案,你会看到它,如果你不受任何条款的约束,不使用第三方库,那么我提出的答案很可能就是你的解决方案。为什么不试试呢?你有没有试过使用Collections.binarySearch(list,“one”)代码>?@Linus“one”是TestVO类的名称属性。TestVO的实例存储在列表中。您是否阅读了链接的问题?@R.J我看到了标记的答案标记的答案并不意味着这是最好的答案。这意味着有标记的答案帮助OP解决了他们的问题,但并不意味着其他答案是错误的。如果你读过其他答案,你会看到它,如果你不受任何条款的约束,不使用第三方库,那么我提出的答案很可能就是你的解决方案。为什么不试试呢?@Debriter我是说HashMap,如果这就是你的意思的话。参考-@Debriter我是说HashMap,如果这就是你的观点的话。参考-@Debriter我是说HashMap,如果这就是你的观点的话。参考-@Debriter我是说HashMap,如果这就是你的观点的话。提及-
List<TestVO> list = new ArrayList<TestVO>();
TestVO vo1 = new TestVO();
vo1.setId(1);
vo1.setName("one");
TestVO vo2 = new TestVO();
vo2.setId(2);
vo2.setName("two");
list.add(vo1);
list.add(vo2);