Tag: 包含

Java ArrayList包含始终返回false,尽管它包含相同的值

这是我的孔类 class Hole { public int a; public int b; Hole(int a, int b) { this.a = a; this.b = b; } 所以我添加了一个包含几个洞的ArrayList public void checkPathLoop(int x, int y) { //rough code ArrayList leftFlowInnerHole = new ArrayList(); //left holes rules leftFlowInnerHole.add(new Hole(0, 1)); leftFlowInnerHole.add(new Hole(1, 5)); leftFlowInnerHole.add(new Hole(5, 4)); leftFlowInnerHole.add(new Hole(0, 4)); 当我添加 Hole userInputHole […]

为什么我们有包含(Object o)而不是contains(E e)?

它是否与旧的(非泛化)版本的Collection保持向后兼容? 还是有一个我错过的更细微的细节? 我也看到这个模式在remove重复remove ( remove(Object o) ),但是add被泛化为add(E e) 。

Eclipse中为包含的JSP指示“someVariable无法解析”错误

所以我有一个主JSP索引页面“index.jsp”,它有几个包含。 就像是, “include.jsp”包含字符串“String basePath = request.getContextPath();”。 “navbar.jsp”使用“basePath”,但Eclipse在“navbar.jsp”的任何一行上放置一个红色X,该行使用“basePath”,消息“basePath无法解析”。 我的webapp工作正常,但想知道可能导致这种情况的原因,或者是否可以解决? 或者也许有办法让Eclipse忽略这个? 我只是希望假阳性的红色X消失。 我想Eclipse并不理解“navbar.jsp”从“include.jsp”获取“basePath”,因为它与“index.jsp”一起编译。

在Java中旋转矩形

我需要创建围绕其中心旋转的矩形(因此它们不需要与坐标系的轴平行)。 所以basicly每个矩形可以由center-X , center-Y , width , height和angle定义 。 我想要做的是对这些矩形中是否包含某些点进行计算(因此不会涉及绘图)。 我想我不能使用Rectangle2D类,因为这些矩形将始终与坐标系的x和y轴平行。 是通过编写我自己的矩形类来获得此function的唯一方法,还是存在任何现有的(类似于Rectangle2D )?

Java Javadoc包括Private

我想为我的应用程序生成javadocs,我还想包括私有成员。 我在Javadoc文档中找到了以下内容 -私人的 显示所有类和成员。 你能举一个例子来帮助我吗? 它应该是这样的: javadoc -private … 我需要知道如何为生成的html doc文件提供根目录和目标目录。 谢谢。 编辑:我找到了一种从NetBeans 6.8生成javadoc的方法。 这如下: NetBeans Java项目通常在项目的属性部分中具有此参数。 您可以在“项目”窗口中右键单击项目名称,然后选择“属性”。 在出现的“项目属性”窗口中,“文档”节点包含一个标记为“包括私有和包私有成员”的复选框字段。 我在这里找到了这个 似乎按需要生成文档。 谢谢大家。

比较LinkedList.contains()中的对象

我希望能够让LinkedList.contains()为自定义比较器返回true。 假设我有1个LinkedList和2个对象 LinkedList myList = new LinkedList(); MyObject a = new MyObject(“HELLO”); MyObject b = new MyObject(“HELLO”); 技术上,两个对象在比较方面是相同的(MyObject实现Comparable) (a == b)== true 但是,当我执行以下操作时,myList不会为myList.contains返回true(b) myList.add(a) myList.contains(b) // == false 我认为它因为包含将检查对象引用,并看到a和b是2个不同的对象。 我有什么方法可以做到这一点所以我不必扩展LinkedList来比较这些对象?

找出对象列表是否包含具有指定字段值的内容?

我有一个从数据库收到的DTO列表,他们有一个ID。 我想确保我的列表包含具有指定ID的对象。 显然,在这种情况下使用期望字段创建一个对象将无济于事,因为contains()调用Object.equals(),它们将不相等。 我找到了一个类似的解决方案:创建一个接口HasId ,在我的所有DTO中实现它,并inheritanceArrayList,其中contains(Long id)一个contains(Long id)方法的新类。 public interface HasId { void setId(Long id); Long getId(); } public class SearchableList extends ArrayList { public boolean contains(Long id) { for (T o : this) { if (o.getId() == id) return true; } return false; } } 但在这种情况下,我不能将List和ArrayList强制转换为SearchableList ……我会接受它,但我想确保我不是在发明自行车。 编辑(2016年10月): 当然,随着Java 8中lambda的引入,这样做的方法很简单: list.stream().anyMatch(dto -> dto.getId() == id);

在包含整数数组的ArrayList上使用contains

我有一个ArrayList ,我向它添加一个数组。 ArrayList j = new ArrayList(); int[] w = {1,2}; j.add(w); 假设我想知道j包含一个不使用w {1,2}的数组,因为我将从另一个类调用它。 所以,我在其中创建了一个带有{1,2}的新数组…… int[] t = {1,2}; return j.contains(t); …但是即使将w添加到列表中,这也会返回false,并且w包含与t完全相同的数组。 有没有办法使用包含这样我可以检查以查看ArrayList其中一个元素是否具有数组值{1,2} ?

ArrayList的自定义Contains方法

我有一些对象 class A { private Long id; private String name; public boolean equals(Long v) { return this.id.equals(v); } } 和这些对象的ArrayList。 我想要的是能够检查该列表是否包含一个按对象的字段的对象。 例如: ArrayList list = new ArrayList(); if (list.contains(0L)) {…} 但是压倒Equals的方法对我没有帮助。 我做错了什么? 谢谢 更新我应该覆盖hashcode()方法吗?