对集合操作
主要方法:
sort()
reverse()逆序
shuffle()打乱--->>>排扑克很有用。
copy()
max()
min()
frequency()求一个元素出现概率。
rotate()
import java.util.Vector;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Enumeration;
public class TestCollections{
public static void main (String[] args) {
ArrayList alist = new ArrayList();
alist.add(75);
alist.add(65);
alist.add(52);
alist.add(3);
alist.add(84);
System.out.println ("原始表:"+alist);
Collections.sort(alist);
System.out.println ("排序后:"+alist);
Collections.reverse(alist);
System.out.println ("逆序后:"+alist);
Collections.shuffle(alist);
System.out.println ("混排后:"+alist);
Collections.rotate(alist,2);
System.out.println ("移位后:"+alist);
ArrayList blist = new ArrayList();
blist.add(55);
blist.add(66);
System.out.println ("新列表:"+blist);
Collections.copy(alist,blist);//把相应元素覆盖。
System.out.println ("拷贝后:"+alist);
System.out.println ("列表中出现66的次数:"+Collections.frequency(alist,66));
System.out.println ("列表中元素的最大值:"+Collections.max(alist));
System.out.println ("列表中元素的最小值:"+Collections.min(alist));
Enumeration en = createDemoEnumeration();
ArrayList clist = Collections.list(en);//将Enumeration转换为list类型。
System.out.println ("Eunmeration->ArrayList:"+alist);
}
public static Enumeration createDemoEnumeration(){
Vector v=new Vector();
v.add("Tom");
v.add("Bell");
v.add("Neo");
return v.elements();
}
}
--------------------Configuration: <Default>--------------------
原始表:[75, 65, 52, 3, 84]
排序后:[3, 52, 65, 75, 84]
逆序后:[84, 75, 65, 52, 3]
混排后:[75, 65, 3, 52, 84]
移位后:[52, 84, 75, 65, 3]
新列表:[55, 66]
拷贝后:[55, 66, 75, 65, 3]
列表中出现66的次数:1
列表中元素的最大值:75
列表中元素的最小值:3
Eunmeration->ArrayList:[55, 66, 75, 65, 3]
Process completed.
分享到:
相关推荐
在Java编程中,`java.util.Collections`类扮演着极其重要的角色,它提供了一系列静态方法用于操作和处理各种类型的`Collection`。这些方法不仅简化了开发过程,提高了代码效率,还增强了程序的可读性和可维护性。...
6. **Enumeration接口**: - `Collections.list(Enumeration<T> e)`:将枚举转换为List。`Enumeration`是Java早期的迭代方式,现在通常被`Iterator`取代,但在处理某些旧的API或容器时仍然有用。 7. **其他工具...
以上只是java.util包中的一部分重要组件,实际上,这个包还包含更多其他类和接口,如Enumeration、Stack、Properties等,它们都在各自的领域提供了丰富的功能。掌握java.util包的使用是每个Java开发者必备的技能,能...
7. **Enumeration接口**:较旧的迭代接口,主要用于早期的集合类,如Vector和Hashtable。 8. **SortedSet和SortedMap接口**:提供了排序功能,它们的实现如TreeSet和TreeMap,根据元素的自然顺序或者自定义的...
3. **遍历**:`Hashtable`使用`Enumeration`接口进行遍历,而`HashMap`使用`Iterator`接口进行遍历。 4. **初始容量和增长策略**:`Hashtable`的默认容量为11,增长策略为旧容量的两倍加一;而`HashMap`的默认容量为...
Java集合框架(Java Collections Framework)为处理对象集合提供了丰富的接口和类。其中包括集合接口(The Collection Interface)、列表接口(The List Interface)、映射接口(The Map Interface)等。这些接口...
Enumeration<InputStream> enu = Collections.enumeration(inputStreams); // 创建SequenceInputStream实例 SequenceInputStream sequenceStream = new SequenceInputStream(enu); // 读取SequenceInputStream...
`Collections.enumeration(List<E> list)`方法就是一个适配器,将`List`的迭代器转换为旧的`Enumeration`接口,使得旧API可以与新API无缝对接。 4. **装饰器模式**:Collections框架中的`Collections.synchronized*...
ss (匿名内部类) 是否可以 extends(继承)其它类,是否可以 implements(实现)interface(接口)?匿名内部类可以直接继承一个类或者实现一个接口。它没有名称,通常用于需要一次性定制的类或接口实现,特别是在需要简洁...
- 匿名内部类可以继承其他类或实现接口,但没有类名,通常用于简化代码和创建临时的、特定场景下的类实例。 3. **静态嵌套类(Static Nested Class)与内部类(Inner Class)**: - 静态嵌套类不持有对外部类的...
例如,它可以创建一个新的类实例,同时实现特定的接口或扩展特定的类,而无需定义单独的类。 3. Static Nested Class 和 Inner Class: - Static Nested Class(静态嵌套类)与普通的类类似,只是它位于另一个类的...
非静态内部类的实例与外部类的实例绑定在一起,创建非静态内部类的实例时,必须先有一个外部类的实例。 #### 四、& 和 && 的区别 1. **&**: 是位运算符,用于按位逻辑运算。在布尔表达式中,`&`同时也会进行短路...
Math类的所有方法均为静态方法,可以通过类名直接调用而无需实例化对象。例如: ```java double result = Math.sqrt(16); ``` ##### 1.2 String类 String类代表不可变的字符序列。一旦创建了一个String对象,就不...
这个框架包括接口(如List、Set、Map)、类(如ArrayList、HashSet、HashMap)以及算法(如排序、搜索)。在"JavaCollectionsTutorial:Java Collections Framework教程的源代码-Source code collection"中,你将找到...
- Static Nested Class是静态嵌套类,它可以访问外部类的静态成员,不需要外部类实例即可创建。 - Inner Class是非静态嵌套类,它与外部类有更紧密的关联,需要外部类的实例才能创建。 4. **&和&&的区别** - `&`...
11.4.1Enumeration接口简介366 11.4.2向量类(Vector)使用示例367 11.4.3栈(Stack)使用示例369 11.4.4字典(Dictionary)简介370 11.4.5哈希表(Hashtable)简介371 11.5本章小结371 第12章类型包装器、...
- Static Nested Class(静态嵌套类)类似于普通的顶级类,但与外部类有静态关联,可以访问外部类的静态成员,无需外部类实例。 - Inner Class(内部类)与外部类有非静态关联,它可以访问外部类的私有成员,需要...
031309_【第13章:Java类集】_foreach及Enumeration接口笔记.pdf 031310_【第13章:Java类集】_Map接口笔记.pdf 031311_【第13章:Java类集】_Map接口使用的注意事项笔记.pdf 031312_【第13章:Java类集】_...
- 抽象类是不能实例化的类,可以包含具体方法和抽象方法。 1.34 Socket - Socket编程用于实现网络通信。 1.35 Runtime类 - Runtime类允许Java程序与运行时环境交互。 1.36 值传递与引用传递 - Java使用值传递机制...
- 内部类持有对外部类的隐式引用,可以访问外部类的私有成员,但需要外部类实例。 - 静态嵌套类不持有对外部类的引用,因此可以直接实例化,类似于普通静态类。 4. **& 和 && 的区别**: - `&` 是位运算符,可以...