「对java集合常用的方法」对java集合常用的方法有

博主:adminadmin 2022-12-07 01:06:09 76

今天给各位分享对java集合常用的方法的知识,其中也会对对java集合常用的方法有进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

Java编程:你所知道的集合类都有哪些?主要方法?

最常用的集合类是 List 和 Map。 List 的具体实现包括 ArrayList 和 Vector,它们是可变大小的列表,比较适合构建、存储和操作任何类型对象的元素列表。 List 适用于按数值索引访问元素的情形。

Map 提供了一个更通用的元素存储方法。 Map 集合类用于存储元素对(称作“键”和“值”),其中每个键映射到一个值。

Set接口也是集合。

java中的集合有几种

集合类是放在java.util.*;这个包里。集合类存放的都是对象的引用,而非对象本身,为了说起来方便些,我们称集合中的对象就是指集合中对象的引用(reference)。引用的概念大家不会忘了吧,在前边我们讲数据类型时讲的。

集合类型主要有3种:set(集)、list(列表)、map(映射)和Queue(队列)。//队列为jdk5中的加上的

(1) Set

集(set)是最简单的一种集合,它的对象不按特定方式排序,只是简单的把对象加入集合中,就像往口袋里放东西。对集中成员的访问和操作是通过集中对象的引用进行的,所以集中不能有重复对象。我们知道数学上的集合也是Set这个,集合里面一定是没有重复的元素的。

(2)List

列表(List)的主要特征是其对象以线性方式存储,没有特定顺序,只有一个开头和一个结尾,当然,它与根本没有顺序的Set是不同的。它是链表嘛,一条链肯定有顺序这个顺序就不一定了。

(3)Map

映射(Map),这个在java里不是地图的意思,其实地图也是映射哈。它里面的东西是键-值对(key-value)出现的,键值对是什么呢?举个例子,比如我们查字典,用部首查字法。目录那个字就是键,这个字的解释就是值。键和值成对出现。这样说可以理解吧。这也是很常用的数据结构哦。

(4)Queue

在jdk5.0以前,通常的实现方式是使用java.util.List集合来模仿Queue。Queue的概念通过把对象添加(称为enqueuing的操作)到List的尾部(即Queue的后部)并通过从List的头部(即Queue的前部)提取对象而从 List中移除(称为dequeuing的操作)来模拟。你需要执行先进先出的动作时可以直接使用Queue接口就可以了。

这4个东西,有时候功能还不太完善,需要有些子类继承它的特性。Set的子接口有TreeSet,SortedSet,List的有ArrayList等,Map里有HashMap,HashTable等,Queue里面有BlockingQueue等。我们来看看例子吧:

实践: Set举例

import java.util.*;

public class SetExample {

public static void main(String[] args) {

Set set = new HashSet(); //HashSet是Set的子接口

set.add("one");

set.add("second");

set.add("3rd");

set.add(new Integer(4));

set.add(new Float( 5.0F ));

set.add("second");

set.add(new Integer(4));

System.out.println(set);

}}

List举例:

import java.util.*;

public class ListExample {

public static void main(String[] args) {

List list = new ArrayList();

list.add("one");

list.add("second");

list.add("3rd");

list.add(new Integer(4));

list.add(new Float( 5.0F ));

list.add("second");

list.add(new Integer(4));

System.out.println(list);

}}

Map举例

import java.util.Map;

import java.util.HashMap;

import java.util.Iterator;

import java.io.FileReader;

public class MapExample {

public static void main(String[] args) throws java.io.FileNotFoundException {

Map word_count_map = new HashMap();

FileReader reader = new FileReader(args[0]);

Iterator words = new WordStreamIterator(reader);

while ( words.hasNext() ) {

String word = (String) words.next();

String word_lowercase = word.toLowerCase();

Integer frequency = (Integer)word_count_map.get(word_lowercase);

if ( frequency == null ) {

frequency = new Integer(1);

} else {

int value = frequency.intValue();

frequency = new Integer(value + 1);}

word_count_map.put(word_lowercase, frequency);

}

System.out.println(word_count_map);

}}

Queue举例:

import java.io.IOException;

import java.io.PrintStream;

import java.util.LinkedList;

import java.util.Queue;

public class QueueTester {

public QueueString q; //发现了一个奇怪的语法,这个尖括号是泛型声明

public QueueTester() {q = new LinkedListString();}

public void testFIFO(PrintStream out) throws IOException {

q.add("First");

q.add("Second");

q.add("Third");

Object o;

while ((o = q.poll()) != null) {

out.println(o);}}

public static void main(String[] args) {

QueueTester tester = new QueueTester();

try { tester.testFIFO(System.out);

} catch (IOException e) {

e.printStackTrace(); } }}

java集合的通用方法有哪些

map集合,对象以键值对的形式存放在集合中,并且键它是不允许重复的。常用的实现是HashMap和TreeMap,HashMap能够快速的查询到一个键,而TreeMap则是对键按序存放的。

list接口是对collection的扩充,它允许存放相同的元素。常用的有2种实现类,ArrayList和LinkedList。ArraryList是一种以数组形式存放元素的集合,更适合于做查询,而LinkedList内部实现链表,适合做增删元素操作。

set接口同样是对collection的扩充,它不允许存放相同的元素。常用类HashSet和TreeSet.HashSet主要能够快速定位到一个元素,需要用到HashCode()方法,而TreeSet类中可以实现对元素的排序。

java中各集合的用法

在工作中个人认为用的较多的是HashMap,LinkedHashMap,ArrayList,Vector等,集合中主要分为两类,一类是像链表类型的,如ArrayList,可以直接加入内容,如:arraylist.add("张三");另一类是像HashMap类型的,里面类容是Key-Value形式的,加入内容方法为hashmap.put("一","吕布");还有很多其他方法,这里不一一列举。

遍历java集合或数组的几种方式

list集合的遍历3种方法:

[java] view plaincopy

package com.sort;

import java.util.ArrayList;

import java.util.Iterator;

import java.util.List;

/**

* list的三种遍历

* @author Owner

*

*/

public class ListTest {

public static void main(String[] args) {

ListString list = new ArrayListString();

list.add("a");

list.add("b");

list.add("c");

list.add("c");//可添加重复数据

//遍历方法一

for(IteratorString iterator = list.iterator();iterator.hasNext();){

String value = iterator.next();

System.out.println(value);

}

//遍历方法二

for(String value : list){

System.out.println(value);

}

//遍历方法三

for(int i=0;ilist.size();i++){

System.out.println(list.get(i));

}

}

}

三种遍历的比较分析:

方法一遍历:

执行过程中会进行数据锁定, 性能稍差, 同时,如果你想在循环过程中去掉某个元素,只能调用it.remove方法。

方法二遍历:

内部调用第一种

方法三遍历:

内部不锁定, 效率最高, 但是当写多线程时要考虑并发操作的问题

List接口的两种主要实现类ArrayList和LinkedList都可以采用这样的方法遍历

关于ArrayList与LinkedList的比较分析

a) ArrayList底层采用数组实现,LinkedList底层采用双向链表实现。

b) 当执行插入或者删除操作时,采用LinkedList比较好。

c) 当执行搜索操作时,采用ArrayList比较好。

java中集合类中各个类的区别和所运用的方法?

查API文档啊。方法都差不多 存值取值 Set用迭代取值,List可以用迭代也可以用get(下标值),因为List是有顺序的,Set没有顺序。Set的add()方法返回一个boolean值,因为不能重复嘛,重复放东西就返回false。Map要特殊一点,用put放东西。有key 和value。通过key值来取对应的value值 Map还有一个方法EntrySet() 可以得到key和value映射的Set集合,然后通过getKey()和getValue()来取值。。List接口的实现类一般用ArrayList,看名字就知道跟数组差不多了,不过数组的大小是固定的,ArrayList大小可变。数组通过length属性得到长度,集合是通过size()方法得到大小。Set接口的实现类一般用HashSet ,Map接口的实现类一般用HashMap。还一个TreeSet,它会根据从小到大排序集合中的对象 最后还是那句话 查文档,再自己做做实验什么都知道了

补充点:vector 和hashtable 这两个实现类对应的就是ArrayList 和 hashtable ,只不过这两个是线程安全的,如果是多个线程要访问集合,就用这两个,如果是一个线程访问的话就用后面两个线程不安全的,效率更高点

关于对java集合常用的方法和对java集合常用的方法有的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-12-07,除非注明,否则均为首码项目网原创文章,转载请注明出处。