JAVA高级教程-Java List(2)

目录

3、List接口的使用(1)

java 复制代码
package ArrayList01;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;

public class day03 {

    public static void main(String[] args) {
        List list=new ArrayList();
        list.add("苹果");
        list.add("华为");
        list.add(0,"小米");

        System.out.println("元素的个数:"+list.size());
        System.out.println(list);


        //2、删除元素
        list.remove("苹果");
        System.out.println("元素的个数:"+list.size());


        //遍历元素
        System.out.println("===============for循环===============");
        for(int i=0;i<list.size();i++){
            System.out.println(list.get(i));
        }


        System.out.println("============增强for循环===============");
        for(Object obj:list){
            System.out.println(obj);
        }

        System.out.println("============使用迭代器===============");
        Iterator it=list.iterator();
        while (it.hasNext()){
            //不能使用Collection删除
            System.out.println(it.next());
        }

        System.out.println("============使用列表迭代器===============");
        ListIterator it1=list.listIterator();
        while (it1.hasNext()){
            //不能使用Collection删除
            System.out.println(it1.next());
        }

    }
}

3、List接口的使用(3)

删除的话不能直接使用元素删除

java 复制代码
package ArrayList01;

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

public class day04 {
    public static void main(String[] args) {
        List list=new ArrayList();
        list.add(10);
        list.add(20);
        list.add(30);
        list.add(40);
        list.add(50);

        System.out.println("元素的个数:"+list.size());
        System.out.println(list);


        //删除操作
        //list.remove(20); //不能这样直接删除
        list.remove(new Integer(20));
        System.out.println("删除后元素的个数:"+list.size());


        List sublist=list.subList(1,3);
        System.out.println(sublist.toString());
    }

}

4、排序,集合之间的转换

java 复制代码
import java.util.*;

public class Order {

    public static void main(String[] args) {
        List<Integer> list = new ArrayList<>();
        list.add(1);
        list.add(8);
        list.add(2);
        list.add(65);
        list.add(34);
        list.add(20);

        System.out.println("排序之前:"+list.toString());

        //sort排序
        Collections.sort(list);
        System.out.println("排序之后:"+list.toString());

        //查找元素,并返回下标
        int i=Collections.binarySearch(list,8);
        System.out.println(i);

        Collections.reverse(list);
        System.out.println("反转之后:"+list.toString());


        //list转换成数组
        Integer arr[]=list.toArray(new Integer[0]);
        System.out.println(Arrays.toString(arr));

        //数组转换成集合  集合是一个受限制的,不能添加删除
        String names[]={"zhan","li","wang"};
        List<String> list2=Arrays.asList(names);
        System.out.println(list2);

        //把基本数据类型改为数组,要修改包装类
        Integer numbers[]={1,4,53,5};
        List<Integer> list3=Arrays.asList(numbers);
        System.out.println(list3);

    }
}
相关推荐
Coder码匠1 小时前
Dockerfile 优化实践:从 400MB 到 80MB
java·spring boot
李慕婉学姐8 小时前
【开题答辩过程】以《基于JAVA的校园即时配送系统的设计与实现》为例,不知道这个选题怎么做的,不知道这个选题怎么开题答辩的可以进来看看
java·开发语言·数据库
奋进的芋圆10 小时前
Java 延时任务实现方案详解(适用于 Spring Boot 3)
java·spring boot·redis·rabbitmq
sxlishaobin10 小时前
设计模式之桥接模式
java·设计模式·桥接模式
model200510 小时前
alibaba linux3 系统盘网站迁移数据盘
java·服务器·前端
武藤一雄10 小时前
C# 关于多线程如何实现需要注意的问题(持续更新)
windows·后端·microsoft·c#·.net·.netcore·死锁
荒诞硬汉10 小时前
JavaBean相关补充
java·开发语言
提笔忘字的帝国11 小时前
【教程】macOS 如何完全卸载 Java 开发环境
java·开发语言·macos
2501_9418824811 小时前
从灰度发布到流量切分的互联网工程语法控制与多语言实现实践思路随笔分享
java·开发语言
華勳全栈11 小时前
两天开发完成智能体平台
java·spring·go