Collection 使用举例
容器类对象在调用remove,Collection 等方法时需要比较对象是否相等,这回涉及到对象类型的equals方法和hashCode方法,对于自定义的的类型
//需要重写equals和hashCode方法以实现自定义的对象相等规则。
package com.study;
import java.util.*;
public class CollectionDemo02 {
public static void main(String []args) {
Collection c1= new LinkedList();
c1.add("CollectionDemo02");
c1.add("CollectionDemo02");
c1.add("CollectionDemo02");
c1.add("CollectionDemo02");
c1.add("TestCollection");
c1.add(new Integer(100));
c1.add(new Double(100.22));
c1.add(new Boolean(true));
c1.add(new Boolean(false));
c1.add(new Desk("Office Desk 1","100","200"));
c1.add(new Desk("Office Desk 2","200","400"));
c1.add(new Desk("Office Desk 3","300","600"));
Collection c2 = new ArrayList();
c2.add(c1);
c2.add("zhudansheng test Collection");
System.out.println("==============================");
System.out.println(c1); //c1全部打印出来
System.out.println("==============================");
System.out.println(c2); //把c1和c2数据全部打印出来
System.out.println("==============================");
c2.remove("TestCollection"); //为什么删除不掉呢?
c2.remove("CollectionDemo02"); //为什么删除不掉呢?
c2.remove(new Boolean(false)); //为什么删除不掉呢?
System.out.println(c2);
System.out.println("==============================");
//因为ColleciontDemo02有好几条数据所以当前只可以删除最后的一条数据
System.out.println("==============================");
System.out.println(c1);
System.out.println("==============================");
c1.remove("TestCollection");
c1.remove("CollectionDemo02");
c1.remove("CollectionDemo02");
c1.remove("CollectionDemo02");
System.out.println(c1);
System.out.println("==============================");
//备注:容器类对象在调用remove,Collection 等方法时需要比较对象是否相等,这回涉及到对象类型的equals方法和hashCode方法,对于自定义的的类型
//需要重写equals和hashCode方法以实现自定义的对象相等规则。
System.out.println(c1.remove(new Desk("Office Desk 1","100","200"))); //false
}
}
class Desk {
private String name;
private String width;
private String height;
public Desk(String name,String width,String height) {
this.name=name;
this.width=width;
this.height=height;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getWidth() {
return width;
}
public void setWidth(String width) {
this.width = width;
}
public String getHeight() {
return height;
}
public void setHeight(String height) {
this.height = height;
}
}
分享到:
相关推荐
-- 遍历 Collection 举例 create temp table tmp0 (value varchar(20)) with no log; foreach cur for -- 把元素赋值给 element 变量,并插入临时表用于验证 select * into element from table(coll1) insert ...
在IT领域,GCC(GNU Compiler Collection)是一款广泛使用的开源编译器,支持多种编程语言,如C、C++、Objective-C、Fortran等。本文将深入探讨“gcc编程举例”这一主题,涵盖动态库和静态库的概念,并通过三种不同...
* 在C#中,我们不用担心内存漏洞,因为C#使用了垃圾回收机制(Garbage Collection),该机制可以自动回收不再使用的对象,从而避免了内存泄露。 二、数据类型转换 * 数据类型转换是指将一种数据类型转换为另一种...
例如,我们可以使用`Collection.stream()`方法将集合转换为流,然后通过`filter()`、`map()`和`collect()`等方法进行处理,最后得到预期的结果。这种方式让代码更加简洁,提高了可读性和可维护性。 此外,Java 8还...
### NBIOT华为云-北向消息订阅-举例 #### 关键知识点概述 本文将详细介绍如何利用华为云物联网平台(IoT Platform)实现NBIoT设备的消息订阅及历史数据查询功能。通过以下知识点的学习,您将能够掌握如何在Eclipse...
- **JAVA**:自动管理内存,通过垃圾回收机制(Garbage Collection)自动释放不再使用的对象。 #### 十四、引用类型 - **C++**:支持引用(reference),类似于别名(alias)。 - **JAVA**:所有对象都是通过引用进行...
在Flex中,我们可以使用mx.collections.XMLListCollection将XML转换为可绑定的数据集合。例如: ```xml <category name="Category 1"> <item>Item 1.1 <item>Item 1.2 <item>Item 2.1 ``` 然后在...
在Java中,所有实现了`Iterable`接口的类(如`Collection`接口的所有实现类)都可以返回一个`Iterator`对象来遍历其内部的元素。 ##### 2. 获取`Iterator`实例 获取`Iterator`实例的方法非常简单,只需调用实现了`...
14、请举例说明如何在 Spring 中注入一个 Java Collection? 15、如何向 Spring Bean 中注入一个 Java.util.Properties? 16、请解释 Spring Bean 的自动装配? 17、请解释自动装配模式的区别? 18、如何开启基于...
DWR支持JavaScript和Java数据类型的相互转换,如JavaScript的Array与Java的List、Collection或数组,JavaScript的Boolean与Java的Boolean,JavaScript的Object与Java的Map或Java Bean,JavaScript的String与Java的...
GCC,全称GNU Compiler Collection,是GNU项目的一部分,主要用于C和C++编程语言的编译。它不仅仅是一个编译器,而是一套包含了预处理、编译、汇编和链接等多个阶段的工具集合。 GCC的功能主要包括: 1. 预处理...
1. **异常捕获**:使用`EXCEPTION`块来捕获并处理异常。 2. **自定义异常**:对于特定的业务逻辑错误,可以定义自定义异常来更精确地控制异常处理流程。 3. **异常传播**:如果某个过程无法处理异常,则可以通过`...
C#使用垃圾收集(Garbage Collection, GC)来自动管理内存,这使得开发者无需手动释放内存。但是,了解何时和如何创建对象以及它们在内存中的行为仍然很重要,以避免内存泄漏或性能问题。理解引用计数和可达性分析是...
8.10 综合应用举例: 这部分内容可能涉及如何在实际项目中使用上述集合类和泛型,比如实现数据结构、存储和检索数据、处理复杂逻辑等。 在Java编程中,理解和熟练运用这些集合类和泛型是至关重要的,它们极大地提高...
**1. ARM架构简介** ARM(Advanced RISC Machines)是一种广泛应用于移动设备、嵌入式系统和服务器的精简指令集计算机(RISC)架构。其优点在于高效能、低功耗,使得它成为众多领域首选的处理器架构。 **2. GNU工具...
- 举例来说,某些情况下通过`OutputStream`写入字节可能更快,而在其他场景下,使用`PrintWriter`输出字符可能更高效。 6. 类实例化: - 避免使用`new`关键字直接创建对象,考虑使用工厂方法、单例模式或者依赖...
举例来说,我们可以通过以下方式使用Stream: ```java List<Person> personList = ... // 员工列表 // 筛选出薪资大于8000的员工 List<Person> highPaidEmployees = personList.stream() .filter(p -> p.getSalary...
举例来说,`Careers_Data_01.java`展示了如何使用ArrayList。在这个例子中,我们创建了一个ArrayList对象`al`,向其中添加元素,然后打印其大小和内容。我们还可以在指定位置插入元素、删除元素,并再次展示更新后的...
- 举例来说,登录状态的用户可能会看到个性化的欢迎消息,而未登录的用户则可能看到登录界面。 2. **B/S结构概述** - B/S(Browser/Server,浏览器/服务器)结构是C/S(Client/Server,客户端/服务器)结构的一种...
1、 多线程有几种实现方法?同步有几种实现方法? 2、 JDBC 中的 PreparedStatement 相比 Statement 的好处? 3、 Java 中实现多态的机制是什么? 4、 说出 ArrayList,Vector, LinkedList 的存储性能和特性 5、 ...