用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字

柯侧耳倾听者    -  云代码空间

—— 翱翔在Java世界的海洋之上

Java集合

2017-12-22|951阅||

摘要:Java集合(2学时) 一、实验目的与要求 1. 熟练掌握Collection和Iterator接口 2. Set集合 3. LinkedHashSet类 4. TreeSet 类  5. List集合  6. Map集合  

Java集合2学时)

一、实验目的与要求

1. 熟练掌握CollectionIterator接口

2. Set集合

3. LinkedHashSet

4. TreeSet

 5. List集合

 6. Map集合

 

二、实验原理

Java集合类是一种特别有用的工具类,可以储存数量不等的对象,并可以实现常用的数据结构,如栈,队列等,除此之外,Java集合还可以用于保存具有映射关系的数组,Java集合就像一种容器,可以吧多个对象(实际上是对像的引用)“丢进”该容器中。

三、预习与准备

1. 熟练掌握CollectionIterator接口

2. Set集合

3. LinkedHashSet

4. TreeSet

 5. List集合

 6. Map集合

、实验内容

1. 熟练掌握CollectionIterator接口

2. 学会使用Set集合

3. 学会使用LinkedHashSet

4. 学会使用TreeSet

 5. 学会使用List集合

 6. 学会使用Map集合

五、实验过程

1. 熟练掌握CollectionIterator接口

package ke03;

 

import java.util.ArrayList;

import java.util.Collection;

import java.util.HashSet;

public class CollectionTest {

public static void main(String[] args) {

// TODO Auto-generated method stub

Collection c = new ArrayList();

c.add("孙悟空");

c.add(6);

System.out.println("c集合的元素个数为:"+c.size());

c.remove(6);

System.out.println("c集合元素个数为: "+c.size());

System.out.println("c集合是否包含\"孙悟空\"字符串:"+c.contains("孙悟空"));

        c.add("轻量级JavaEE企业号应用实战");

        System.out.println("c集合的元素:"+c);

        Collection books = new HashSet();

        books.add("轻量级JavaEE企业应用实战");

        books.add("疯狂Java讲义");

        System.out.println("c集合是否完全包含books集合:"+c.containsAll(books));

        c.remove(books);

        System.out.println("c集合中的元素:"+c);

        c.clear();

        System.out.println("c集合中的元素:"+c);

        books.containsAll(c);

        System.out.println("books集合的元素:"+books);

}

}

 

package ke03;

import java.util.ArrayList;

import java.util.Collection;

import java.util.Iterator;

public class IteratorTest {

public static void main(String[] args) {

// TODO Auto-generated method stub

Collection books = new ArrayList();

books.add("轻量级JavaEE企业应用实战");

        books.add("疯狂Java讲义");

        books.add("孙悟空");

Iterator it = books.iterator();

while(it.hasNext()){

String book = (String)it.next();

System.out.println(book);

if(book.equals("疯狂Java讲义")){

it.remove();

}

book ="测试字符串";

}

System.out.println(books);

}

}

 

 

2. 学会使用Set集合

package ke03;

import java.util.HashSet;

class A{

public boolean equals(Object obj){

return true;

}

}

class B{

public int hashCode(){

return 1;

}

}

class C{

public int hashCode(){

return 2;

}

public boolean equals(Object obj){

return true;

}

}

public class HashSetTest {

public static void main(String[] args) {

// TODO Auto-generated method stub

HashSet books = new HashSet();

         books.add(new A());

         books.add(new A());

         books.add(new B());

         books.add(new B());

         books.add(new C());

         books.add(new C());

         System.out.println(books);

}

}

 

3. 学会使用LinkedHashSet

package ke03;

import java.util.LinkedHashSet;

public class LinkedHashSetTest {

public static void main(String[] args) {

// TODO Auto-generated method stub

LinkedHashSet books = new LinkedHashSet();

books.add("疯狂java讲义");

        books.add("轻量级javaEE企业实战管理");

        System.out.println(books);

        books.remove("疯狂java讲义");

        books.add("疯狂java讲义");

        System.out.println(books);

}

}

4. 学会使用TreeSet

package ke03;

import java.util.TreeSet;

public class TreeSetTest {

public static void main(String[] args) {

// TODO Auto-generated method stub

      TreeSet nums = new TreeSet();

     nums.add(5);

     nums.add(2);

     nums.add(10);

     nums.add(-9);

     System.out.println(nums);

     System.out.println(nums.first());

     System.out.println(nums.last());

     System.out.println(nums.headSet(4));

     System.out.println(nums.tailSet(5));

     System.out.println(nums.subSet(-3,4));

}

}

 5. List集合

package ke03;

import java.util.*;

public class ListTest {

public static void main(String[] args) {

// TODO Auto-generated method stub

     List books = new ArrayList();

     books.add(new String("轻量级javaEE企业应用实战"));

     books.add(new String("疯狂java讲义"));

     books.add(new String("疯狂Android讲义"));

     System.out.println(books);

     books.add(1,new String("疯狂Ajax讲义"));

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

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

     }

     books.remove(2);

     System.out.println(books);

     System.out.println(books.indexOf(new String("疯狂Ajax讲义")));

      books.set(1,new String("疯狂java讲义"));

  System.out.println(books);

  System.out.println(books.subList(1, 2));

}

}

 6. 学会使用Map集合

package ke03;

import java.util.*;

public class MapTest {

public static void main(String[] args) {

// TODO Auto-generated method stub

       Map map = new  HashMap();

       map.put("疯狂java讲义", 109);

       map.put("疯狂ios讲义", 10);

       map.put("疯狂Ajax讲义", 79);

       map.put("轻量级javaEE企业应用实战", 99);

      System.out.println(map.put("疯狂ios讲义", 99));

      System.out.println(map);

      System.out.println("是否包含值为 疯狂ios讲义 key:"+map.containsKey("疯狂ios讲义"));

      System.out.println("是否包含值为  99 value:"+map.containsValue(99));

}

}

 

 

package ke03;

import java.util.WeakHashMap;

public class WeakHashMapTest {

public static void main(String[] args) {

// TODO Auto-generated method stub

     WeakHashMap whm = new WeakHashMap();

     whm.put(new String("语文"), new String("良好"));

     whm.put(new String("数学"), new String("及格"));

     whm.put(new String("英文"), new String("一般"));

     whm.put("Java", new String("中等"));

     System.out.println(whm);

     System.gc();

     System.runFinalization();

     System.out.println(whm);

}

}

 

、实验过程

1. 熟练掌握泛型

 

 

 

2. 使用Set集合

 

 

3. 使用LinkedHashSet

 

4. 使用TreeSet

 

 5. 使用List集合

 

 

 6. 使用Map集合

 

 

 

六、实验总结与体会

     通过这次课的学习,初步掌握了java集合的基本用法和一些常用的方法,也发现了自身的一些问题,比如不注重细节,导致程序无法运行,同时也发现要与同学进行交流与合作,及时发现问题并解决问题,也使自己了解到自身的不足,所以在今后的学习中,要更加认真学习,并多与同学和老师交流,这样能够更好的学好Java,同时我们要多敲代码,只有这样,我们才能熟悉代码,做到熟能生巧,才能更好的学好java,敲好java代码。

顶 0踩 0收藏
文章评论
    发表评论

    个人资料

    • 昵称: 柯侧耳倾听者
    • 等级: 初级设计师
    • 积分: 2220
    • 代码: 64 个
    • 文章: 64 篇
    • 随想: 5 条
    • 访问: 43 次
    • 关注

    标签

    最新提问

      站长推荐