• 集合set、map、list


    一、set 无序、可重复

    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

    二、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]

     三、map 映射key-value

    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
  • 相关阅读:
    CyclicBarrier与CountDownLatch区别
    导入搜狗实验室新闻语料库
    安装ik分词插件
    分页显示时传递页码的方法
    elasticsearch安装步骤
    linux查看端口占用情况
    Python:文件的读取、创建、追加、删除、清空
    R语言-选择样本数量
    不符合正态分布的配对数据也有自己的统计方法。
    python时间处理
  • 原文地址:https://www.cnblogs.com/liuqi/p/6802810.html
Copyright © 2020-2023  润新知