zoukankan      html  css  js  c++  java
  • JAVA中的集合

    List总结

    1. 所有的List中只能容纳单个不同类型的对象组成的表,而不是Key-Value键值对。例如:[ tom,1,c ];

    2. 所有的List中可以有相同的元素,例如Vector中可以有 [ tom,koo,too,koo ];

    3. 所有的List中可以有null元素,例如[ tom,null,1 ];

    4. 基于Array的List(Vector,ArrayList)适合查询,而LinkedList(链表)适合添加,删除操作。

    Set总结:

    1. Set实现的基础是Map(HashMap);

    2.  Set中的元素是不能重复的,如果使用add(Object obj)方法添加已经存在的对象,则会覆盖前面的对象

    Map映射
    映射与集或列表有明显区别,映射中每个项都是成对的。映射中存储的每个对象都有一个相关的关键字(Key)对象,关键字决定了对象在映射中的存储位置,检索对象时必须提供相应的关键字,就像在字典中查单词一样。关键字应该是唯一的。

    以下是集合打出相应的部门

    Department.java类

     1 package com.collection;
     2 
     3 import java.util.List;
     4 import java.util.Map;
     5 import java.util.Set;
     6 
     7 public class Department {
     8     public String name ;
     9     public String empName[];
    10     public List<Employ> empList;
    11     public Set<Employ> empSet;
    12     public Map<String,Employ> empMap;
    13     public Map<String, Employ> getEmpMap() {
    14         return empMap;
    15     }
    16     public void setEmpMap(Map<String, Employ> empMap) {
    17         this.empMap = empMap;
    18     }
    19     public Set<Employ> getEmpSet() {
    20         return empSet;
    21     }
    22     public void setEmpSet(Set<Employ> empSet) {
    23         this.empSet = empSet;
    24     }
    25     public List<Employ> getEmpList() {
    26         return empList;
    27     }
    28     public void setEmpList(List<Employ> empList) {
    29         this.empList = empList;
    30     }
    31     public String getName() {
    32         return name;
    33     }
    34     public void setName(String name) {
    35         this.name = name;
    36     }
    37     public String[] getEmpName() {
    38         return empName;
    39     }
    40     public void setEmpName(String[] empName) {
    41         this.empName = empName;
    42     }
    43 
    44 }

    Employ.java类

     1 package com.collection;
     2 
     3 public class Employ {
     4     public String name;
     5 
     6     public String getName() {
     7         return name;
     8     }
     9 
    10     public void setName(String name) {
    11         this.name = name;
    12     }
    13 }

    TestCollection.java类

     1 package com.collection;
     2 
     3 import java.util.Iterator;
     4 import java.util.Map;
     5 import java.util.Map.Entry;
     6 
     7 import org.springframework.context.ApplicationContext;
     8 import org.springframework.context.support.ClassPathXmlApplicationContext;
     9 
    10 public class TestCollection {
    11 
    12     /**
    13      * @param args
    14      */
    15     public static void main(String[] args) {
    16         ApplicationContext ac = new ClassPathXmlApplicationContext("com/collection/beans.xml");
    17         Department department = (Department)ac.getBean("department");
    18         System.out.println(department.getName());
    19         for(String emp:department.getEmpName()){
    20             System.out.println(emp);
    21         }
    22         System.out.println("..................");
    23         for(Employ e:department.getEmpList()){
    24             
    25             System.out.println(e.getName());
    26         }
    27         System.out.println("..................");
    28         for(Employ e:department.getEmpSet()){
    29             
    30             System.out.println(e.getName());
    31         }
    32         
    33         Map<String,Employ> employee = department.getEmpMap();
    34         Iterator it = employee.keySet().iterator();
    35         while(it.hasNext()){
    36             String key = (String) it.next();
    37             Employ emp = employee.get(key);
    38             System.out.println("迭代器--"+key+emp.getName());
    39         }
    40         
    41         System.out.println("..................");
    42         for(Entry<String, Employ> entry:department.getEmpMap().entrySet()){
    43             System.out.println(entry.getKey()+" "+entry.getValue().getName());
    44         }
    45     }
    46 
    47 }

     beans.xml

     1 <?xml version="1.0" encoding="UTF-8"?>
     2 <beans
     3     xmlns="http://www.springframework.org/schema/beans"
     4     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     5     xmlns:p="http://www.springframework.org/schema/p"
     6     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
     7 <bean id="department" class="com.collection.Department">
     8     <property name="name" value="往事" />
     9     <property name="empName">
    10     <list>
    11         <value>网络</value>
    12         <value>设施</value>
    13         <value>软件</value>
    14     </list>
    15     </property>
    16     <property name="empList">
    17         <list>
    18             <ref bean="emp1"/>
    19             <ref bean="emp2"/>
    20         </list>
    21     </property>
    22         <property name="empSet">
    23         <set>
    24             <ref bean="emp1"/>
    25             <ref bean="emp2"/>
    26         </set>
    27     </property>
    28     <property name="empMap">
    29         <map>
    30             <entry key="1" value-ref="emp1"></entry>
    31             <entry key="2" value-ref="emp2"></entry>
    32         </map>
    33     </property>
    34 </bean>
    35 
    36 <bean id="emp1" class="com.collection.Employ">
    37     <property name="name" value="张三" />
    38 </bean>
    39 <bean id="emp2" class="com.collection.Employ">
    40     <property name="name" value="李斯" />
    41 </bean>
    42 </beans>

    作者:少帅

    出处:少帅的博客--http://www.cnblogs.com/wang3680

    您的支持是对博主最大的鼓励,感谢您的认真阅读。

    本文版权归作者所有,欢迎转载,但请保留该声明。

    支付宝 微信
  • 相关阅读:
    Codeforces 716C[数论][构造]
    HDU 5808[数位dp]
    Codeforces 611d [DP][字符串]
    Codeforces 404D [DP]
    HDU 5834 [树形dp]
    HDU 5521 [图论][最短路][建图灵感]
    矩阵
    kruskal 处理最短路 问题 A: 还是畅通工程
    Dijastra最短路 + 堆优化 模板
    CodeForces
  • 原文地址:https://www.cnblogs.com/wang3680/p/2993622.html
Copyright © 2011-2022 走看看