如何判断ArrayList中是否存在写入 scanner 的值?

List<CurrentAccount> lista = new ArrayList<CurrentAccount>();

CurrentAccount conta1 = new CurrentAccount("Alberto Carlos", 1052);
CurrentAccount conta2 = new CurrentAccount("Pedro Fonseca", 30);
CurrentAccount conta3 = new CurrentAccount("Ricardo Vitor", 1534);
CurrentAccount conta4 = new CurrentAccount("João Lopes", 3135);

lista.add(conta1);
lista.add(conta2);
lista.add(conta3);
lista.add(conta4);

Collections.sort(lista);

System.out.printf("Bank Accounts:" + "%n");
Iterator<CurrentAccount> itr = lista.iterator();
while (itr.hasNext()) {
    CurrentAccount element = itr.next();
    System.out.printf(element + " " + "%n");
}
System.out.println();

推荐答案

只要用ArrayList.contains(desiredElement)就行了.例如,如果您要从示例中查找conta1帐户,您可以使用如下内容:

if (lista.contains(conta1)) {
    System.out.println("Account found");
} else {
    System.out.println("Account not found");
}

Edit: 请注意,要使其正常工作,您需要正确覆盖equals()hashCode()方法.如果您使用的是Eclipse IDE,那么您可以通过首先打开CurrentAccount对象的源文件并 Select Source > Generate hashCode() and equals()...来生成这些方法

Java相关问答推荐

当列顺序更改时,Table View列列表的Change. wasPermanted()总是返回假

@ EnableRouting注释在Kotlin项目中不工作

@从类文件中删除JsonProperty—Java

如果一个子类没有构造函数,超类也没有构造函数,那么为什么我可以构造子类的实例呢?

使用标记时,场景大纲不在多个线程上运行

springboot start loge change

相同的Java SerializedLambda为implMethodKind返回不同的结果

如何使用值中包含与号的查询参数创建一个java.net.URI

Mac上的全屏截图在使用JavaFX时不能正常工作吗?

无法在Java中处理PayPal支付响应

WebSockets和Spring Boot安全性出现错误401

没有使用Lombok生成的参数

Instancio未在日志(log)中显示测试失败消息

当构造函数创建一个新实例时,Java为什么需要&new";

如何使用MapStrCut转换双向链接

如何在IntelliJ IDEA的Build.sbt中添加外部JAR文件?

如果执行@BeForeEach#repository.save(),则测试中的UnitTest最终UUID会发生更改

如何在Spring Security中设置一个任何人都可以打开的主页?

PhantomReference无法访问时会发生什么?

错误:JOIN/ON的参数必须是boolean类型,而不是bigint类型.Java Spring启动应用程序