首页 / JAVA / CoreJava集合
CoreJava集合
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了CoreJava集合,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3854字,纯文字阅读大概需要6分钟。
内容图文
![CoreJava集合](/upload/InfoBanner/zyjiaocheng/625/748dbbe72fa14a4eba40e7f8c38a7fa1.jpg)
foreach循环:除了使用迭代器遍历集合之外,使用JDK1.5及以上提供的增强for循环,也可以遍历集合。
foreach循环的格式:for(变量类型 变量名 : 集合){ //操作变量 }相当于,每次循环,使用指定变量,去指向集合中的一个对象,然后在循环体中对该变量进行操作 ? 集合 java.util 接口: Collection list:允许重复,记录元素进入集合的先后顺序 set:不予许重复,不记录元素进入集合的先后顺序 sortedset set加排序 Map:键值对(key:value) key不允许重复 sortedmap: Map+对key排序 ? 数据类型 变量名=new 数据类型(); ? 实现类: LIst:
- ArrayList(Vector) 数组:增删慢,查找快 //Vector线程安全
- LInkedLIst 链表:增删快,查找慢
- HashSet Hash散列表:HashSet中元素不可重复,主要是靠对象的hashCode和equals方法来判断对象是否重复,HashSet中存储元素是无序的,主要因为它是靠对象的哈希值来确定元素在集合中的存储位置。
- SortedSet 一> TreeSet 红黑树:TreeSet可以将我们存进去的数据进行排序,排序的方式有两种:
自然排序 比较器排序(也称客户化排序)
Map:
- HashMap 只对key计算的hash散列表:
- HashTable:
- TreeMap 只对key进行排序:
- LinkedHashMap:
排序规则:
String排序: str1.compareTo(str2);
- 内部排序 comparable
- 外部排序 comparator
package com.collection; import com.bean.Book; import org.junit.Test; import java.util.*; public class CollectionTest { Comparator c=new Comparator(){ public int compare(Object o1, Object o2){ Book b1=(Book) o1; Book b2=(Book) o2; // if (b1.getBookName()=="百年孤独" || b2.getBookName()=="百年孤独") return 1; return b1.getBookName()=="百年孤独"? 1 :(b2.getBookName()=="百年孤独"? 1 : (Integer.parseInt(b1.getBookId())==Integer.parseInt(b2.getBookId()))? Float.compare(b1.getPrice(), b2.getPrice()): Integer.compare(Integer.parseInt(b1.getBookId()), Integer.parseInt(b2.getBookId()))); // if (Integer.parseInt(b1.getBookId())==Integer.parseInt(b2.getBookId())){ // return Float.compare(b1.getPrice(), b2.getPrice()); // }else{ // return Integer.compare(Integer.parseInt(b1.getBookId()), Integer.parseInt(b2.getBookId())); // } // return Integer.compare(Integer.parseInt(b1.getBookId()), Integer.parseInt(b2.getBookId())); // public int compareTo(Object o){ // Book other = (Book) o; // return Float.compare(this.price, other.price); // /* // 等价于if(this.price > other.price){ // return 1; // }else if(this.price < other.price){ // return -1; // }else{ // return 0;} // */ // } } }; @Test public void test1(){ System.out.println("junit test1"); } @Test public void test2(){ //1、构建一个list集合,存储String类型的元素 ArrayList<String> list=new ArrayList<>(); for(int lm=0; lm<6; lm++){ String str = "hello" + lm; list.add(str); } for(String str:list){ System.out.println(str); } } @Test public void testSet(){ //使用hashset集合添加整数 Set<String> set=new HashSet<>(); for(int i=0; i<6; i++){ String str = "hello" + i; set.add(str); } set.add("hello1"); System.out.println(set.size()); System.out.println(set); } @Test public void bookTestSet(){ //构建三本书依次添加到set集合中 Set<Book> book=new HashSet<Book>(); Book book1=new Book("100001", "百年孤独", 20.9f); // Book book2=book1; Book book2=new Book("100001", "百年孤独", 29.9f); // book.add(new Book("100001", "百年孤独", 20.9f)); // book.add(new Book("100001", "百年孤独", 29.9f)); // book.add(new Book("100001", "百年孤独", 20.9f)); book.add(book1); book.add(book2); for(Book bk:book){ System.out.println(bk); } // System.out.println(book); } @Test public void testTreeSet(){ Set<Book> book= new TreeSet<>(c); book.add(new Book("100002", "第二十二条军规", 29.9f)); book.add(new Book("100001", "百年孤独", 29.9f)); book.add(new Book("100001", "百年孤独", 26.9f)); book.add(new Book("100003", "知更鸟女孩", 19.9f)); for(Book bk:book){ System.out.println(bk); } } }
内容总结
以上是互联网集市为您收集整理的CoreJava集合全部内容,希望文章能够帮你解决CoreJava集合所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。