`

ArrayList ,LinkedList, TreeSet的使用方法

    博客分类:
  • java
阅读更多
import java.util.*;

public class ArrayListTest_1 {
	public static void main(String[] args) {
		
		@SuppressWarnings("rawtypes")
		ArrayList<Comparable> al = new ArrayList<Comparable>();// 创建一个ArrarList对象
		System.out.println("a1 的初始化大小:" + al.size());
		// 向ArrayList对象中添加新内容
		al.add(Double.valueOf(Math.random()));
		al.add(Float.valueOf(14.2f));
		al.add("hellow");
		al.add("A");
		al.add("B");
		System.out.println("a1 的内容: " + al);                //集合类的输出方式!!!!!!
		al.add(1, "%");          // add()方法    目的是把%加在ArrayList对象的第2个位置
		System.out.println("a1 add后的大小:" + al.size());   //集合类的大小!!!!!!
		System.out.println("a1 add后的内容:" + al);
		// 从ArrayList中移除数据
		al.remove("Z");                                              //没有匹配的话为空操作
		al.remove(3);       //移除的下标为3的数据
		System.out.println("a1 remove后的大小: " + al.size());
		System.out.println("a1 remove后的内容: " + al);
	}
}

//*********************************************************************

import java.util.*;

public class LinkedListTest_1 {
	public static void main(String[] args) {
		Calendar rightNow = Calendar.getInstance();
		Date d = rightNow.getTime();
		LinkedList<String>ll = new LinkedList<String>();// 创建LinkedList对象
		// 加入元素到LinkedList中
		ll.add("now");
		ll.add("the");
		ll.add("time");
		ll.add("is");
		//ll.addFirst"1"+Integer.valueOf(123)+"");  // 在链表的第一个位置上加入int型数据
		ll.addLast(""+d+"");  // 在链表的最后个位置加上Date型数据
		ll.add(2, "*");  // 在链表第三个元素的位置上加入数据
		System.out.println("LinkedList 最初的内容:" + ll);
		ll.remove(0);  // 可以通过下标,从链表中移除元素
		ll.remove("*");  // 可以从链表中直接移除元素内容
		System.out.println("LinkedList remove后的内容:" + ll);
		Object obj = ll.get(3);  // 取得下标为3的元素值
		ll.add(0, obj + "right?"); // 将修修改后的新值插入到下标为0的位置上
		System.out.println("LinkedList 修改后的内容:" + ll);
	}
}


//****************************************************************************
import java.util.*;

public class TreeSetTest_1 {
	public static void main(String[] args) {
		TreeSet<String> ts = new TreeSet<String>(); // 创建一TreeSet对象 输入里面的东西是自然排序的 以第一个字符的sacii码
		// 加入元素到TreeSet中
		ts.add("A");
		ts.add("def");
		ts.add("ni");
		ts.add("o");
		ts.add("WORD");
		ts.add("Boy");
		System.out.println("TreeSet: " + ts);  //
		Iterator<String> it = ts.iterator();     // 创建迭代器it
		System.out.println("用Iterator迭代遍历:");
		while (it.hasNext()) {           // 判断是否还有元素可以进行迭代,有则返回true
			System.out.print(it.next() + "  ");// 返回下一个元素
		}
	}
}
//TreeSet: [A, Boy, WORD, def, ni, o]
//用Iterator迭代遍历:
//A  Boy  WORD  def  ni  o  
分享到:
评论

相关推荐

    ArrayList和Linkedlist1

    4. **安全性问题**:在传递ArrayList到方法或作为返回值时,如果不希望外部修改ArrayList,可以使用`Collections.unmodifiableList()`将ArrayList转换为不可变的视图,或者在方法内部复制一份ArrayList后再进行操作...

    51. ArrayList LinkedList Set HashMap介绍.txt

    除非特别需要线程安全性,否则推荐使用 `ArrayList`。 - **扩容策略**:`Vector` 默认的扩容比例是 2 倍,而 `ArrayList` 是 1.5 倍。这意味着在某些情况下,`Vector` 的内存占用可能会更高。 ### 总结 以上四种...

    第8讲 对比Vector、ArrayList、LinkedList有何区别1

    由于线程安全的特性,如果不特别需要线程安全,通常不推荐使用Vector,因为无锁的ArrayList在单线程环境下性能更好。 ArrayList是更常用的选择,它同样基于动态数组实现,但非线程安全。ArrayList在需要时会调整...

    java中ArrayList 、LinkList区别.doc

    - 如果需要保持元素的排序,LinkedList 不支持快速的二分查找,而ArrayList 可以结合TreeSet或TreeMap等数据结构实现高效的排序查找。 综上所述,选择ArrayList 还是LinkedList 应根据具体应用场景的需求来决定。...

    Collectionjs:SortedSet,SortedList,Queue,ArrayList,LinkedList,TreeSet,HashMap

    它可以在 nodejs 和浏览器中使用。 var sets=new Collection.SortedSet(); sets.add('z'); sets.add('c'); sets.add('a'); sets.add('a'); sets.add('b'); sets.add('k'); console.log("Contains k "+sets....

    arrayList排序

    - 对于大量数据的排序,ArrayList的性能可能不如使用LinkedList,因为ArrayList排序时涉及到大量的索引计算和元素移动。 - 如果ArrayList中元素的类型不一致,`Collections.sort()`会抛出ClassCastException异常,...

    day016-list和set笔记以及代码.zip

    如果是定制排序,需要创建TreeSet对象的时候,传入一个Comparetor接口实现类对象,重写compare方法 一般是默认排序用自然排序(Comparable接口),特殊排序用定制排序(Comparetor接口实现) LinkedHashSet:如果...

    查询速度调研 1

    例如,`Arraylist`子类的`structuer(int n)`方法使用`add()`方法向ArrayList中添加元素,而`LinkedList`子类则使用`addLast()`方法,因为LinkedList在尾部添加元素更快。 在`test()`方法中,代码使用while循环逐步...

    java集合类详解(set list ArrayList等java集合类详述)

    ArrayList 提供了 toArray() 方法,返回一个数组。Arrays.asList() 方法返回一个列表。 迭代器(Iterator)提供了一种通用的方式来访问集合中的元素。迭代器的工作原理是通过 next() 方法返回元素,并可以通过 ...

    JAVA容器讲解.pdf

    Java容器讲解PPT,Collection Map(HashMap TreeMap LinkedHashMap) List (ArrayList LinkedList Vector) Set (HashSet TreeSet LinkedHashSet)

    对于java集合类的一个简单介绍

    ArrayList和LinkedList是List接口的两个常用的实现类,而HashSet和TreeSet是Set接口的两个常用的实现类。Iterator是一种设计模式,提供了遍历集合的能力。Collection接口是Java集合类中最高级的接口,提供了基本的...

    ArrayList源码分析.docx 等

    为了解决这个问题,可以使用 `Collections.synchronizedList` 将 ArrayList 包装成线程安全的列表,但请注意,这种方法只保证了基本的线程安全性,对于迭代操作仍然需要额外的同步措施。 面试中,ArrayList 通常会...

    Collections源码java-Java_collections:Java的ArrayList、LinkedList、HashMap、Tr

    Collections 源码 java Java Java的ArrayList、LinkedList、HashMap、TreeMap、LinkedHashMap、HashSet、TreeSet相关源码分析,及相关问题和应用总结。

    Java集合讲义大全.docx

    常见的 List 实现类有 ArrayList 和 LinkedList。 * Set 是一个无序集合,不允许存储重复的数据。常见的 Set 实现类有 HashSet 和 TreeSet。 * Map 是一个无序集合,集合中包含一个键对象和一个值对象,键对象不允许...

    Java集合Collection、List、Set、Map使用详解

    TreeSet使用红黑树,元素自动排序且不可重复。 - 操作性能:HashSet插入和查找速度快,但不保证元素顺序;TreeSet插入和查找速度略慢,但能提供排序功能。 **HashMap与TreeMap的区别** - 排序:HashMap不保证元素的...

    javase集合 温故而知新.doc

    LinkedList是使用链表实现的List,查找速度慢,但删除添加元素速度快。Vector是ArrayList的同步版本,现在被弃用。 Set接口的实现类有HashSet、TreeSet等。HashSet是使用哈希表实现的Set,查找速度快,但元素不可...

    java-集合-知识点汇总

    Java集合有多种类型,常见的有ArrayList、LinkedList、HashSet、TreeSet、HashMap、TreeMap等。 * ArrayList:是一个基于数组的列表实现,支持随机访问和快速查找。 * LinkedList:是一个基于链表的列表实现,支持...

    初级JAVA PPT教程,适用于初级学者。忘珍惜

    本篇PPT教程针对初级学者,将介绍一些核心的Java类,如Date、Calendar、Math以及BigInteger,还会涉及常用的容器类,包括ArrayList、LinkedList、HashSet、HashMap、TreeSet和TreeMap。 首先,我们来看Date类。Date...

    java集合练习题.pdf

    Java 集合练习题 Java 集合接口是 Java 语言中最基本的数据结构之一,它提供了多种类型的集合接口,如 Collection、List、Set、Map 等。...理解集合接口的特点和使用方法是 Java 程序设计的基础。

    Java 最常见的 208 道面试题:第二模块答案

    - **数据结构**:ArrayList 使用数组,LinkedList 使用双向链表。 - **随机访问**:ArrayList 支持快速随机访问,而 LinkedList 访问需要从头或尾部遍历。 - **插入和删除**:ArrayList 插入和删除在中间位置效率较...

Global site tag (gtag.js) - Google Analytics