zoukankan      html  css  js  c++  java
  • 8.5~8.11 每周总结

    本周总结

    集合

    Java集合大致可以分为Set、List、Map三种体系,
    其中Set代表无序、不可重复的集合;List代表有序、重复的集合;Map则代表具有映射关系的集合。

    .set集合 应用示例

    Set集合与Collection基本上完全一样,它没有提供任何额外的方法。实际上Set就是Collection,只是行为略有不同。(Set不允许包含重复元素)。
    Set集合不允许包含相同的元素,如果试图把两个相同的元素加入同一个Set集合中,则添加操作失败。

    1)HashSet类
    (1)HashSet是Set接口的实现。HashSet按Hash算法来存储集合中的元素,具有很好的存取和查找性能。
    (2)HashSet不能保证元素的排列顺序,顺序可能与添加顺序不同,顺序也有可能发生变化。
    (3)当向HashSet集合中存入一个元素时,HashSet会调用该对象的hashCode()方法来得到该对象的hashCode值,然后根据该HashCode值决定该对象在HashSet中的存储位置。如果有两个元素
    通过equals()方法比较返回true,但它们的hashCode()方法返回值不相等,HashSet将会把它们存储在不同的位置,依然可以添加成功。即,HashSet集合判断两个元素相等的标准是两个
    对象通过equals()方法比较相等,并且两个对象的hashCode()方法返回值也相等。

    package jihe;
    
    import java.util.HashSet;
    import java.util.Iterator;
    
    public class TestHashSet {
    	
    	public static void main(String[] args) {
    		/**
    		 *1. HashSet 无序
    		 * 2.不允许重复值
    		 */
    		HashSet<String> hs=new HashSet<String>();
    		hs.add("1");
    		hs.add("2");
    		hs.add("3");
    		hs.add("4");
    		hs.add("5");
    		
    		/**
    		 * yong Iterator 遍历集合
    		 */
    		Iterator<String> it=hs.iterator();
    		while(it.hasNext())
    		{
    			String s=it.next();
    		  System.out.println(s+" ");
    		}
    	}
    
    }
    

      输出值为1 2 3 4 5

    2.Map 集合应用

    (1)HashMap实现算法是哈希表,实现的数据结构是链表与数组。

    package jihe;
    
    import java.util.HashMap;
    import java.util.Iterator;
    
    public class TestHashMap {
    	
    	public static void main(String[] args) {
        HashMap<String,Student>	hashMap=new HashMap<String,Student>();
        hashMap.put("1号", new Student("张三",10));
        hashMap.put("2号", new Student("李四",20));
        hashMap.put("3号", new Student("王五",30));
        
        //通过key,获取value
       Student s= hashMap.get("1号");
        System.out.println(s.getName()+":"+s.getAge());
        //遍历集合
        
        Iterator<String> it=hashMap.keySet().iterator(); //获取key的集合,获取迭代器
        while(it.hasNext()) {
        	String key=it.next();
        	Student student=hashMap.get(key);
        	System.out.println("key="+key+" value={"+student.getName()+","+student.getAge()+"}");
        }
    	} 
    
    }
    

     输出结果:

    张三:10
    key=3号 value={王五,30}
    key=2号 value={李四,20}
    key=1号 value={张三,10}

    HashMap.put()  为数据标号,在调用的时候可以直接用get()调用所标的号码,直接输出数据。

    java 常用方法:

    )Collection接口是List、Set和Queue接口的父接口,该接口里定义的方法既可以用于操作Set集合、也可以用于操作List集合和Queue集合。
    boolean add(Object o):该方法用于向集合里添加一个元素。
    boolean addAll(Collection c):该方法把集合c里的所有元素添加到指定集合里。
    void clear():清除集合里的所有元素,将集合长度变为0。
    boolean contains(Object o):返回集合里是否包含指定元素。
    boolean containsAll(Collection c):返回集合里是否包含集合c里的所有元素。
    boolean isEmpty():返回集合是否为空。当集合长度为0时返回true,否则返回false。
    Iterator iterator():返回一个Iterator对象,用于遍历集合里的元素。
    boolean remove(Object o):删除集合中的指定元素o,当集合中包含了一个或多个元素o时,这些元素将被删除,该方法将返回true。
    boolean removeAll(Collection c):将集合中删除集合c里包含的所有元素(相当于用调用该方法的集合减集合c),如果删除了一个或一个以上的元素,则该方法返回true。
    boolean retainAll(Collection c):将集合中删除集合c里不包含的元素(相当于把调用该方法的集合变成该集合的集合c的交集),如果该操作改变了调用该方法的集合,则该方法返回true。
    int size():该方法返回集合里元素的个数。
    Object[] toArray():该方法把集合转换成一个数组,所有的集合元素变成对应的数组元素。

      

    Iterator接口遍历集合元素
    Iterator接口也是Java集合框架的成员,主要用于遍历Collection集合中的元素,Iterator对象也被称为迭代器。
    Iterator接口里定义了如下三个方法:
    boolean hasNext():如果被迭代的集合元素还没有被遍历,则返回true。
    Object next():返回集合里的下一个元素。
    void remove():删除集合里上一次next方法返回的元素。

    本周总结:系统学习了Set集合,Map集合,LinkedList集合,ArrayList集合,Foreach集合还有Iterator集合等,让我对Java的简便有了很大认识,基本所以的类方法都可以找到,例如学习信息管理系统的实现,使用LinkedList就可以实现大部分功能,相较于C++与C语言,省略了很多的编写模板代码的时间,这对于追求效率的企业来说很有帮助,Java也无愧于前三甲的使用率。

  • 相关阅读:
    html5跨域通讯之postMessage的用法
    zTree插件之多选下拉菜单代码
    css3创建一个上下线性渐变色背景的div
    zTree插件之单选下拉菜单代码
    PhoneGap中navigator.notification.confirm的用法详解
    CCS3属性之text-overflow:ellipsis;的用法和注意之处
    HTML5的自定义属性data-* 的用法解析
    HSSFWorkbook转MultipartFile InputStream转MultipartFile
    @Transactional
    synchronized volatile
  • 原文地址:https://www.cnblogs.com/cxy0210/p/11334084.html
Copyright © 2011-2022 走看看