Tag: list

如何编写generics方法来查找最大元素并调用该方法?

当我试图通过generics教程Q&A解决练习时,我的答案略有不同 我的答案 public static <T extends Comparable> T max(List list, int begin, int end) //Option1 public static <T extends Comparable> T max(List list, int begin, int end) //Option2 从下面引用的答案 所以我的问题是 选项1:如果T extends Object & Comparable它会有什么不同T extends Object & Comparable T extends Object & Comparable被替换为T extends Comparable T extends Comparable 。 是不是extends Object隐含? 选项2:如果Comparable它会有什么不同Comparable Comparable被Comparable取代? 如果是这样? […]

如何为List 创建JSONArray

我有一个叫做的课 class Student { String name; String age; } 我有一个返回List对象的方法 public List getList(){ List li =new ArrayList(); …. li.add(new Student(‘aaa’,’12’)); … return li; } 我需要将该列表转换为JSONArray [{“name”:”sam”,”age”:”12″},{“name”:”sri”,”age”:”5″}] 任何人都可以帮我解决这个问题吗? 谢谢你提前..

如何根据自定义java对象而不是基本类型从列表中删除重复项?

在我发布这个问题之前,我发现在这里发布了类似的问题。 但答案是基于一个字符串。 但是,我在这里有不同的情况。 我不是要删除String而是另一个名为AwardYearSource的对象。 该类有一个名为year的int属性。 所以我想删除基于年份的重复项。 即如果有不止一次提到的2010年,我想删除该AwardYearSource对象。 我怎样才能做到这一点?

从Java 7和8中的现有列表创建不同的列表?

如果我有: List listInts = { 1, 1, 3, 77, 2, 19, 77, 123, 14, 123… } 在Java中,什么是创建List listDistinctInts的有效方法, List listDistinctInts包含List listDistinctInts中的不同值? 我的想法是创建一个Set setInts其中包含Set setInts中的所有值,然后调用List listDistinctInts = new ArrayList(setInts); 但这似乎效率低下 – 使用Java 7是否有更好的解决方案? 我没有使用Java 8,但我相信使用它我可以做这样的事情(?): List listDistinctInts = listInts.stream().distinct().collect(Collectors.toList()); 这会比上面的方法更高效和/或在Java 8中有更有效的方法吗? 最后,(我知道,如果我只关心listInts中不同元素的数量 ,那么提出多个问题可能会令人不悦,但这是直接相关的)是否有更有效的方法来获取该值(在Java 7和8中) – 首先不创建所有不同元素的列表或集合? 我最感兴趣的是使用本机Java方法来实现这一点并避免重新发明任何轮子,但如果它们提供更好的清晰度或性能,则会考虑手动代码或库。 我已经阅读了这个相关的问题Java – 不同的对象列表,但是它并不完全清楚Java 7和8方法之间的性能差异,或者是否有更好的技术?

是否有标准的Java List实现,不允许向它添加null?

假设我有一个List ,我知道我永远不想为它添加null 。 如果我向它添加null,则意味着我犯了一个错误。 所以每次我调用list.add(item)我会调用if (item == null) throw SomeException(); else list.add(item); if (item == null) throw SomeException(); else list.add(item); 。 是否有一个现有的List类(可能在Apache Commons或其他东西中)为我做这个? 类似的问题: 帮助删除Java列表中的空引用? 但我不想删除所有空值,我想确保它们从未被添加到第一位。

使用.contains方法忽略大小写的选项?

有没有选择忽略.contains()方法的情况? 我有一个DVD对象的ArrayList 。 每个DVD对象都有一些元素,其中一个是标题。 我有一个搜索特定标题的方法。 它有效,但我希望它不区分大小写。

什么更有效率? 清空一个对象或创建一个新对象?

“新”有多贵? 我的意思是,我是否应该重新使用相同的对象,或者如果对象是“超出范围”,它与清空它是一样的吗? 例如,假设一个方法创建一个列表: List list = new ArrayList(); 在方法的最后,列表不再使用 – 它是否意味着没有分配给它的内存,或者它是否意味着有一个指向它的空指针(因为它是’创建’)。 或者,我可以向方法发送一个’list’,并在方法的末尾清空它: list.removeAll(list); 从记忆的角度来看会有什么不同吗? 谢谢!

如何在List的每个元素上调用方法?

假设我有一个汽车列表: public class Car { private String brand; private String name; private String color; public Car() { // … } public getName() { return name; } // … } // Suppose that I have already init the list of car List cars = //… List names = new ArrayList(); for (Car c : cars ) […]

将3个arraylist合并为一个

我想在java中合并3个arraylist。 有谁知道哪种方法最好?

LinkedList,队列与列表的区别

创建这两个对象有什么区别 Queue test = new LinkedList(); 和 List test2 = new LinkedList(); test和test2之间的实际差异是什么? 他们俩都是LinkedList吗? 是否存在使用其中一个的性能差异或原因?