- 浏览: 77080 次
- 性别:
- 来自: 大连
文章分类
最新评论
Java.util.ArrayList(类):
import java.awt.*;
import java.util.*;
public class CollectionTest
{//List是一个能包含重复元素的已排序的Collection,有时list也称为序列,List第一个元素的下标为0
public String colors[]={"red","white","blue"};//定义一个字符数组
//构造函数
public CollectionTest()
{
ArrayList list=new ArrayList();//实例化一个ArrayList
list.add(Color.magenta);//向里面添加一个元素,这里是颜色
for(int count=0;count<colors.length;count++)
list.add(colors[count]);//加入开始声明的数组中的元素
list.add(Color.cyan); //颜色 导入awt包
System.out.println("\nArrayList");
for(int count=0;count<list.size();count++)
System.out.println(list.get(count)+" ");//从arrayList中读取 元素
removeString(list);
System.out.println("\n\nArrayList after calling"+"removeString:");
for(int count=0;count<list.size();count++)
System.out.println(list.get(count)+" ");
}
public void removeString(Collection collection)
{
Iterator itrator=collection.iterator(); //声明一个迭代
//调用itrator的hasNext方法判断Collection是否还包含元素
while(itrator.hasNext())
{
//调用itrator的next方法获得下一个元素的引用
if( itrator.next() instanceof String ) // instanceof 判断是否是String 的实例
itrator.remove(); //如果是的 则删除
}
}
public static void main(String[] args)
{
new CollectionTest();
}
}
import java.util.*;
public class CollectionTest
{//List是一个能包含重复元素的已排序的Collection,有时list也称为序列,List第一个元素的下标为0
public String colors[]={"red","white","blue"};//定义一个字符数组
//构造函数
public CollectionTest()
{
ArrayList list=new ArrayList();//实例化一个ArrayList
list.add(Color.magenta);//向里面添加一个元素,这里是颜色
for(int count=0;count<colors.length;count++)
list.add(colors[count]);//加入开始声明的数组中的元素
list.add(Color.cyan); //颜色 导入awt包
System.out.println("\nArrayList");
for(int count=0;count<list.size();count++)
System.out.println(list.get(count)+" ");//从arrayList中读取 元素
removeString(list);
System.out.println("\n\nArrayList after calling"+"removeString:");
for(int count=0;count<list.size();count++)
System.out.println(list.get(count)+" ");
}
public void removeString(Collection collection)
{
Iterator itrator=collection.iterator(); //声明一个迭代
//调用itrator的hasNext方法判断Collection是否还包含元素
while(itrator.hasNext())
{
//调用itrator的next方法获得下一个元素的引用
if( itrator.next() instanceof String ) // instanceof 判断是否是String 的实例
itrator.remove(); //如果是的 则删除
}
}
public static void main(String[] args)
{
new CollectionTest();
}
}
该例示范了ArrayList的使用 先声明了一String类型的数组,里面存储了“颜色”,是用字符串写出的颜色,将这个字符串数组存入ArrayList实例,同时还存入了awt包内的颜色实例,全部存入后利用迭代,删除不符要求的假数据,也就是我们用字符串写的颜色,也用到了 instanceof 它是一个二元操作符,类似于equals用于判断instanceof左边 的对象 是否是 右边对象的实例,若是 返回真,这里就可以判断 ArrayList里面的真假颜色,假颜色是 字符串的 实例,所以我们通过迭代 一个个对比。只要是String的实例就将其从数组中删除,所以最后 ArrayList里面仅仅剩下二个元素,运行效果如下:
java.util.HashSet(类);
可以看到重复元素 orange除去了
java.util.Set(接口)
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
class TestSet
{
public static void main(String args[])
{
Set set = new HashSet();
set.add("aaa");
set.add("bbb");
set.add("aaa");//后面加入的重复性元素均无效
set.add("bbb");
set.add("aaa");
set.add("bbb");
set.add("aaa");
set.add("bbb");
set.add("aaa");
set.add("bbb");
Iterator ite=set.iterator();
System.out.println(set.size());//the result is 2
while(ite.hasNext())
{
System.out.println("----"+ite.next());
}
}
}
import java.util.Iterator;
import java.util.Set;
class TestSet
{
public static void main(String args[])
{
Set set = new HashSet();
set.add("aaa");
set.add("bbb");
set.add("aaa");//后面加入的重复性元素均无效
set.add("bbb");
set.add("aaa");
set.add("bbb");
set.add("aaa");
set.add("bbb");
set.add("aaa");
set.add("bbb");
Iterator ite=set.iterator();
System.out.println(set.size());//the result is 2
while(ite.hasNext())
{
System.out.println("----"+ite.next());
}
}
}
我们看到效果
java.util.List(接口)
package tt;
import java.util.Arrays;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
public class ListTest {
public static void baseUse(){
//链表实现
List list = new LinkedList();
//数组实现
//List list = new ArrayList();
list.add("a");//向列表的尾部追加"a"
System.out.println("使用list接口的add()一个参数的方法:"+list);
list.add(0,"b");//在指定位置插入"b"
System.out.println("使用list接口的add二个参数的方法:"+list);
list.remove("a");//移除列表中"a"
System.out.println("使用list接口的remove()方法删除a:"+list);
}
public static void useSort(){
String[] strArray = new String[] {"z", "a", "c","C"};
List list = Arrays.asList(strArray);
System.out.println(list);
Collections.sort(list);//根据元素自然顺序排序
System.out.println("自然顺序:"+list);
Collections.sort(list, String.CASE_INSENSITIVE_ORDER);//根据指定的字母方式排序
System.out.println("指定字母方式:"+list);
Collections.sort(list, Collections.reverseOrder());//根据反转自然顺序方式排序
System.out.println("反转自然顺序:"+list);
Collections.sort(list, String.CASE_INSENSITIVE_ORDER);
System.out.println(list);
Collections.reverse(list);//反转列表排序
System.out.println(list);
}
public static void main(String[] args) {
baseUse();
// useSort();
}
}
import java.util.Arrays;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
public class ListTest {
public static void baseUse(){
//链表实现
List list = new LinkedList();
//数组实现
//List list = new ArrayList();
list.add("a");//向列表的尾部追加"a"
System.out.println("使用list接口的add()一个参数的方法:"+list);
list.add(0,"b");//在指定位置插入"b"
System.out.println("使用list接口的add二个参数的方法:"+list);
list.remove("a");//移除列表中"a"
System.out.println("使用list接口的remove()方法删除a:"+list);
}
public static void useSort(){
String[] strArray = new String[] {"z", "a", "c","C"};
List list = Arrays.asList(strArray);
System.out.println(list);
Collections.sort(list);//根据元素自然顺序排序
System.out.println("自然顺序:"+list);
Collections.sort(list, String.CASE_INSENSITIVE_ORDER);//根据指定的字母方式排序
System.out.println("指定字母方式:"+list);
Collections.sort(list, Collections.reverseOrder());//根据反转自然顺序方式排序
System.out.println("反转自然顺序:"+list);
Collections.sort(list, String.CASE_INSENSITIVE_ORDER);
System.out.println(list);
Collections.reverse(list);//反转列表排序
System.out.println(list);
}
public static void main(String[] args) {
baseUse();
// useSort();
}
}
运行
java.util.TreeSet(类)
package tt;
import java.util.Iterator;
import java.util.TreeSet;
public class TreeSetTest {
public static void main(String args[]){
TreeSet a = new TreeSet();
a.add("1167014513046,hondanna_mousepress");
a.add("1167014512046,hondanna_mousepress_usefull");
a.add("1167014511046,hondanna_mousepress_num");
a.add("1167014515437,hondanna_mousepress");
a.add("1167014514438,hondanna_mousepress_usefull");
Iterator iterator = a.iterator();
while(iterator.hasNext())
System.out.println(iterator.next());
}
}
import java.util.Iterator;
import java.util.TreeSet;
public class TreeSetTest {
public static void main(String args[]){
TreeSet a = new TreeSet();
a.add("1167014513046,hondanna_mousepress");
a.add("1167014512046,hondanna_mousepress_usefull");
a.add("1167014511046,hondanna_mousepress_num");
a.add("1167014515437,hondanna_mousepress");
a.add("1167014514438,hondanna_mousepress_usefull");
Iterator iterator = a.iterator();
while(iterator.hasNext())
System.out.println(iterator.next());
}
}
运行结果:
TreeSet为使用树来进行存储的Set接口提供了一个工具,对象按升序存储,访问和存储是很快的,在存储了大量的需要进行快速检索的排序信息的情况下,TreeSet是一个很好的选择。
构造函数定义为:
TreeSet()-构造一个空的树集合,该树集合将根据其元素的自然顺序按升序排序。
TreeSet(Collection c)-构造了一个包含了c的元素的树的集合。
TreeSet(Comparator comp)-构造了一个空的树的集合,它按照由comp指定的比较函数进行排序。
TreeSet(SortedSet ss)-构造了一个包含ss的元素的树集合。
//Set是包含独一无二元素的Collection,HashSet把它的元素存储在哈希表中,而TreeSet把它的元素存储在树中
import java.util.*;
public class SetTest
{
private String colors[]={"orange","tan","orange","white", "gray"};
public SetTest()
{
ArrayList list;
import java.util.*;
public class SetTest
{
private String colors[]={"orange","tan","orange","white", "gray"};
public SetTest()
{
ArrayList list;
发表评论
-
NIO2
2010-02-03 22:50 1201对文件进行分割与组合: -c 组合 -s 分割 例如: ... -
NIO
2010-02-02 23:42 1028很久没有使用IO进行处理文件了,虽然很简单,不过自己也写了一个 ... -
正则表达式
2010-01-27 13:49 927做了一个关于邮箱验证的正则表达式 /** Email的 ... -
Java那么点事
2010-01-25 15:13 967public class Customer extends P ... -
java 初学者可能犯的错误
2010-01-18 22:16 1227在编程过程中,我们可 ... -
JAVA中浅复制与深复制
2009-08-04 18:21 9611.概念: 浅复制与深复制概念⑴浅复制(浅克隆)被复制对象的 ... -
1.3 添加到Java 5中的语言特性 - 《Java高级编程(JDK6版)》
2009-07-27 22:30 19771.3 添加到Java 5中的语言特性 Java ... -
深入理解JMM的重点
2009-07-24 22:16 958JMM具体规定要JLS的 "Thread and l ... -
问题总结
2009-06-29 16:01 903对于这个系列里的问题,每个学Java的人都应该搞懂。当然 ... -
java 自动装箱与拆箱中的陷阱
2009-06-29 12:36 1409自动装箱与拆箱的功能 ... -
Cookie和Session专题
2009-05-22 13:44 868一、cookie机制和session机制的区别******** ... -
java的String类,equals函数和比较操作符==的区别
2009-05-07 12:44 961整理关于java的String类,equals函数和比较操 ... -
理解java String
2009-05-06 19:08 738要理解 java中String的运作方式,必须明确一点:Str ... -
Array的copy总结
2009-05-06 16:44 0今天看了一片文章,说的是数组的copy,学习心得体验一下: ... -
Java基本功——Reference
2009-05-05 17:23 803Java基本功——Reference ... -
java参数传递时到底是值传递还是引用传递
2009-05-05 17:12 2081当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属 ... -
UML之继承、实现、依赖、关联、聚合、组合
2009-05-04 13:47 1250这是一堂关于UML基础 ... -
java中的构造方法的深入了解
2009-05-04 13:29 960很长时间对与构造方法没有很深的认识,但看过一篇介绍他的文章后感 ... -
JAVA,你真的熟悉了吗?
2009-03-21 10:11 922时常看到一些人说掌握 ... -
IO的用法
2009-02-02 15:36 1817一. Input和Output 1. stream代表 ...
相关推荐
1. 几种集合间相互转换以及类集与对象数组之间的转换 * 每种集合类中都提供它独有的 API 函数,在程序中使用正确集合类可以提高开发的效率 2. 集合的输出 * 使用迭代器(Iterator 接口)将集合对象实例转换成 ...
集合框架主要包括以下几种主要类型的集合: - **列表(List)**:有序集合,允许重复元素。 - **集(Set)**:无序且不允许重复元素的集合。 - **映射(Map)**:存储键值对的数据结构。 ##### 2.2 List List接口...
根据提供的文档信息,我们可以总结出以下几个关键的Java编程知识点: ### 1. 斐波那契数列(Fibonacci Sequence) #### 知识点详解: 斐波那契数列是一个非常经典的数学概念,在计算机科学中也有广泛的应用。...
五种常用的Java设计模式 Java设计模式是软件开发中的一种重要概念,主要用来解决软件设计中的一些问题。...五种常用的Java设计模式可以帮助开发者更好地解决软件设计中的问题,从而提高了软件的质量和可维护性。
本主题聚焦于易语言中的面向对象编程,特别是模仿Java集合框架的List和Map接口的实现。这些数据结构在编程中扮演着核心角色,用于组织和管理数据。 首先,让我们深入了解易语言的面向对象编程概念。面向对象编程...
Java中的`Date`类和集合类是编程中非常基础且重要的概念。`Date`类主要用于处理日期和时间,而集合类则提供了存储和操作对象的容器。在这篇笔记中,我们将深入探讨这两个主题。 首先,`java.util.Date`类虽然在Java...
### JAVA集合详解 #### 一、集合框架概述 ##### 1....以上代码演示了如何使用`Collection`接口的几种常用方法,并展示了如何对集合进行基本的操作。这些方法可以帮助开发人员有效地管理集合中的数据。
在Java编程语言中,集合类是一组对象的集合,用来存储、操作和检索数据。集合类是Java集合框架的核心部分,它提供了丰富的数据...掌握这些知识点对于学习Java编程及在实际工作中使用Java进行项目开发都是至关重要的。
本资料集合主要涵盖了几个关键的Java知识点,包括XML处理、多线程(特别是生产者-消费者模型)、反射机制以及文件操作。 首先,XML(可扩展标记语言)是数据交换和存储的重要格式。在"JAVA操作XML"和"Java解析XML...
Java集合与多线程是Java编程中的两个核心概念,它们在实际开发中有着广泛的应用。本文将深入探讨这两个主题,并结合实例进行详细讲解。 首先,我们来看Java集合。集合是Java提供的一种数据结构,用于存储多个对象。...
首先,为了在Java项目中使用Redis,我们需要引入Jedis库,这是一个流行的Java Redis客户端。在Maven项目的`pom.xml`文件中添加以下依赖: ```xml <groupId>redis.clients <artifactId>jedis <version>3.7.0 ``...
为了更深入地学习和理解这三大集合,你可以阅读提供的文档"Java三大集合.docx",它将详细解释每种集合的原理、操作方法以及使用场景,并可能包含实例代码和性能分析,助你从理论到实践全面掌握Java集合框架。...
本实例将深入探讨几种常见的数据结构及其在Java中的实现,包括数组、链表、栈、队列、集合、映射(哈希表)、图和树等。 首先,数组是最基本的数据结构,它提供了一种存储固定数量相同类型元素的方法。在Java中,...
Java集合框架是Java编程语言中的核心部分,它提供了一种高效、灵活的数据组织方式,使得开发者可以方便地存储和管理对象。本文将深入探讨Java集合框架的各个方面,包括Collection、List、Set和Map,以及它们的实现...
以下是对给定文件中提到的几种常见`RuntimeException`的详细解析: 1. **`NullPointerException` - 空指针引用异常** 当尝试在`null`值上执行操作时,就会抛出`NullPointerException`。这通常是由于变量未被正确...
Java是一种广泛使用的面向对象的编程语言,以其跨平台、高性能和强大的库支持而闻名。"Java学习小实例"是针对初学者和有一定基础的学习者设计的一系列教程,旨在通过具体的代码示例帮助理解Java的基础概念和技术。这...
总的来说,这个压缩包中的Java例子程序涵盖了基础的编程概念,如类、方法、变量、控制流、异常处理、集合、文件操作和多线程,对于初学者来说是一份很好的学习资源。通过分析和实践这些代码,可以帮助初学者逐步掌握...
4. **布局管理器**:Java Swing提供了几种布局管理器,如FlowLayout、BorderLayout、GridLayout和BoxLayout,它们决定了组件在窗口中的排列方式。选择合适的布局管理器可以创建美观且响应式的界面。 5. **JFrame和...
在Java编程语言中,集合框架是处理对象数组的核心部分,它提供了一种高效、灵活的方式来存储和操作数据。本教程的"Java实例 - 集合输出源代码+详细指导教程.zip"旨在帮助开发者深入理解Java集合框架,并通过实例源...