集合set、map、list

1、set 無序、可重複java

public static  void main(String[] args){
       Set<String> set=new HashSet<String>();
        String s1=new String("hello");
        String s2=s1;
        String s3=new String("world");
        String s5=new String("world");
        //Set集合中add方法自動去重
        set.add(s1);
        set.add(s2);
        set.add(s3);
        set.add(s5);
        //輸出set數組
        System.out.println(set);
        //第1種 for循環遍歷
        for(String str:set){
          System.out.println("for循環遍歷:"+str);
        }
        //第2中 Iterator迭代遍歷 hasNext()檢查序列中是否還有元素 ,next()得到序列中的下一個元素
        for(Iterator iterator=set.iterator();iterator.hasNext();){
            String str=(String)iterator.next();
            System.out.println("Iterator迭代遍歷:"+str);
        }
        
        //第3種方法 經過split分離而後輸出
        String[] s4=set.toString().split(",");
        for(int i=0;i<s4.length;i++){
            System.out.print("split輸出結果:"+s4[i].replace("[", "").replace("]", ""));
        }
   }

運行結果:
[hello, world]
for循環遍歷:hello
for循環遍歷:world
Iterator迭代遍歷:hello
Iterator迭代遍歷:world
split輸出結果:hellosplit輸出結果: world

2、list 有序、可重複數組

package com.liuqi.ceshi;

import java.util.ArrayList;
import java.util.List;

public class ListTest {

    public static void main(String[] args) {
        //list 有序 可重複
        List<String> person=new ArrayList();
        //add添加方法
        person.add("zhangsan");
        person.add("lisi");
        person.add("lisi");
        person.add("wangwu");
        person.add("zhaoliu");
        person.add("zhangsan");
        System.out.println("輸出集合中元素"+person);
        //remove刪除元素
        person.remove(0);
        System.out.println("remove刪除元素"+person);
        //經過下標獲取具體值
        String index0= person.get(0);
        System.out.println("經過下標獲取具體值:"+index0);
        //for循環遍歷
        for(String str:person){
            System.out.println(str);
        }
        //contains查看某個元素是否在此集合中
        String personname="zhangsan";
        if(person.contains(personname)){
            System.out.println("zhangsan在list列表中");
        }
        //.set(index, element)
        person.set(0, "liuqi");
        System.out.println("將第一個下標值對應值改成liuqi:"+person);
        //經過元素找下標
        System.out.println(person.indexOf("liuqi"));
        System.out.println(person.lastIndexOf("zhangsan"));
        
        List<String> animal=new ArrayList();
         animal.add("dog");
         // 比較兩個對象是否相等用equals,比較hashcode用==
         if(person.equals(animal)){
             System.out.println("相同");
         }else{
             System.out.println("不相同");
         }
         //判斷list是否爲空
         if(person.isEmpty()){
             System.out.println("爲空");
         }else{
             System.out.println("不爲空");
         }
         //將集合轉化爲字符串
         System.out.println("將集合轉化爲字符串"+person.toString());
         //將集合轉化爲數組
         System.out.println("將集合轉化爲數組"+person.toArray());
        //去重複
         for (int i = 0; i <person.size()-1; i++) {
             for (int j = person.size()-1; j >i; j--) {
                 if (person.get(j).equals(person.get(i))) {
                     person.remove(j);
                 }
             }
         }
         System.out.println("元素去重"+person);
         
    }

    

}

運行結果:
輸出集合中元素[zhangsan, lisi, lisi, wangwu, zhaoliu, zhangsan]
remove刪除元素[lisi, lisi, wangwu, zhaoliu, zhangsan]
經過下標獲取具體值:lisi
lisi
lisi
wangwu
zhaoliu
zhangsan
zhangsan在list列表中
將第一個下標值對應值改成liuqi:[liuqi, lisi, wangwu, zhaoliu, zhangsan]
0
4
不相同
不爲空
將集合轉化爲字符串[liuqi, lisi, wangwu, zhaoliu, zhangsan]
將集合轉化爲數組[Ljava.lang.Object;@6b38dba
元素去重[liuqi, lisi, wangwu, zhaoliu, zhangsan]

 3、map 映射key-valuespa

package com.liuqi.ceshi;

import java.util.HashMap;
import java.util.Map;

public class MapTest {

    public static void main(String[] args) {
        Map<String,String> map=new HashMap<String,String>();
        map.put("1", "zhangsan");
        map.put("2", "zhangsan");
        map.put("3", "lisi");
        //Map.values()遍歷全部values
        for(String values:map.values()){
            System.out.println(values);
        }
        //Map.entrySet遍歷key和value
         for (Map.Entry<String, String> entry : map.entrySet()){
             System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue()); 
         }
        
    }

}

運行結果:
lisi
zhangsan
zhangsan
key= 3 and value= lisi
key= 2 and value= zhangsan
key= 1 and value= zhangsan
相關文章
相關標籤/搜索