Tag: 集合

Java数组是同构的是什么意思,但ArrayLists不是?

如果我们有一个Type [],我们只能在其中存储Type或其子类型。 ArrayList也是如此。 那么为什么说一个是同质的而另一个不是呢?

HashMap中的NULL键的Hashcode

我刚刚读到了Java中HashMap和HashTable类之间的区别。 在那里,我发现前者允许空键以及后来不具有相同权限的区别。 就HashMap的工作而言,我知道,它在key上调用hashcode方法来查找要放置该键值对的存储区。 这里有我的问题:如何计算空值的哈希码或者是否存在空键哈希码的默认值(如果是,请指定值)?

如何从Java Hashmap中加总值

我需要一些帮助,我自己学习如何处理Java中的地图今天我试图从Hashmap获得值的总和,但现在我卡住了。 这是我想要求和的地图值。 HashMap map = new HashMap(); map.put(“First Val”, (float) 33.0); map.put(“Second Val”, (float) 24.0); 另外一个问题,如果我在地图中有10或20个值,如何将所有这些值相加,我是否需要制作“for”? 关心并感谢您的帮助。

比较器接口的覆盖比较方法使用什么排序算法?

Collections.sort(ar, new Comparator() { @Override public int compare(Intervals o1, Intervals o2) { return (Integer.valueOf(o1.getEnd())) .compareTo(Integer.valueOf(o2.getEnd())); } }); 大家好,我在java中有上面的代码。 这里,ar是一个列表,Intervals是一个包含2个整数变量的类:Start和End。 我想知道当我们覆盖Comparator接口的compare方法时,遵循什么排序算法。 我知道,默认情况下Collections.sort()和Arrays.sort()使用Timsort算法。 任何帮助将不胜感激。 非常感谢提前。

使用由自己调用的removeAll()的潜在错误

在使用Sonar进行代码审查期间,以下代码被检测为错误代码: ArrayList ops = new ArrayList(); ops.add(“test”); ops.removeAll(ops); Sonar正在抱怨集合本身所调用的removeAll。 我同意这很丑,但这会引入错误吗? 注意:这不是我的代码,我正在审核它。

按排序顺序存储条目并检索条目周围的条目

我正在尝试模拟一个游戏板,其中多个玩家可以提交他们的游戏分数。 POJO即。 Entry.java表示排行榜中的条目。 请注意重写的equals()方法 。 排名是排行榜中的位置,1是得分最高的用户 public class EntryTreeMapOption { private String uid; private int score; private int position; public EntryTreeMapOption(String uid, int score) { this.uid = uid; this.score = score; } public EntryTreeMapOption() { } public String getUid() { return uid; } public void setUid(String uid) { this.uid = uid; } public int getScore() […]

是否有Java集合可以在添加更多项目时删除项目? (一个简单的缓存)

我需要一个简单的缓存机制。 我想要跟上最近添加的100个最近的项目,但不超过这个限制。 当我添加另一个项目时,我希望该集合自动删除第101个项目。 想象一下,将LifeSaver糖果推入管中 – 当我在管的一端添加另一个糖果时,另一端糖果会掉出来。 写我自己很简单。 在执行“添加”之前,我的“添加”方法将首先删除最旧的项目。 我只是想知道是否已经写过这样的课程。 我查看了捆绑的Collection类,List,Queue等。 我也看了一下谷歌番石榴 。 但似乎都没有这个简单的function。 这对谷歌来说是个难题,因为我不知道这种行为的行话。

Java集合排序的绑定不匹配

您需要有关java集合排序的帮助。 它给了我这个错误: Bound mismatch: The generic method sort(List) of type Collections is not applicable for the arguments (List). The inferred type WifiSSID is not a valid substitute for the bounded parameter <T extends Comparable> 我的代码看起来像: public class WifiSSID { public String SSIS; public double id; } public class ScanFilterWifiList { public ScanFilterWifiList(List wifiList) { Collections.sort(wifiList); […]

使用JAXB映射包含超类型和子类型的Java集合

我正在尝试用JAXB生成这样的东西: Foo Bar <some_elements…. 的子元素都来自一个普通的超类。 在Java中,它是这样的: @XmlRootElement(name = “person”) public class Person { public String firstName; public String lastName; @XmlElementWrapper(name = “identities”) public Set identities = new HashSet(); } Identity是Blue , Green和其他人的超级类。 public class Identity { @XmlID @XmlAttribute public String id; } @XmlRootElement(name = “blue”) public class Blue extends Identity { public String oneOfManyFields; } […]

ConcurrentModificationException的

我正在使用下面的代码片段,尝试处理电子表格,需要排除ad hoc列。 我知道我正在做的粗略方式,将exception放在ArrayList中并处理每个列表中的列表并且在当前行列上的增量是不正常的,但是你知道只是完成它。 但是我得到了标题错误,我认为这应该永远不会发生。 我只是循环遍历ArrayList并进行比较,而不是修改任何东西。 错误在哪里? 有没有更好的方法来处理例外列表? ArrayList noProcess = new ArrayList(); Iterator itr00 = noProcess.iterator(); Iterator itr01 = noProcess.iterator(); noProcess.add(new Integer(“5”)); noProcess.add(new Integer(“18”)); …. boolean include=true; for(int i=0;i<archive.length;i++){ for (int j = 0; j < archive[i].length; j++) { while (itr00.hasNext()) { if (j == ( (Integer) itr00.next()).intValue()) include = false; } if (include) {…