笔试常考知识点

本博客主要记录笔试中常考的一些知识点或者技巧。

1. 各类Java容器的用法

在这里插入图片描述
在这里插入图片描述

图片:https://github.com/CyC2018/CS-Notes/blob/master/notes/Java%20%E5%AE%B9%E5%99%A8.md

数组

数组是很基础的一种数据结构,这里我指记录数组在做题中的一些小用途。

    public static void main(String[] args) {
   

        //两种数组初始化赋值的方法
        Integer[] nums = {
   1, 2 ,3};
        nums = new Integer[]{
   1, 2, 4, 3};

        //数组从小到大排序
        Arrays.sort(nums);
        //数组从大到小排序
        Arrays.sort(nums, new Comparator<Integer>() {
   
            @Override
            public int compare(Integer o1, Integer o2) {
   
                return o2.compareTo(o1);
            }
        });

        //把数组转化成流再操作
        Arrays.stream(nums).forEach((ele)-> System.out.println(ele));
//        4
//        3
//        2
//        1

        //把数组转化成List
        List<Integer> list = Arrays.asList(nums);
    }
List

List用的最多的是ArrayList和LinkedList,ArrayList底层实现是数组,LinkedList底层实现是双向链表,此处指介绍容器用法,原理可参考:https://github.com/CyC2018/CS-Notes/blob/master/notes/Java%20%E5%AE%B9%E5%99%A8.md。

1. ArrayList

    public static void main(String[] args) {
   
        List<String> list = new ArrayList<>();
        list.add("aaa");
        list.add("ccc");
        list.add("bbb");

        //get获取下标对应值
        System.out.println(list.get(1));

        //set修改下标对应值
        list.set(1, "ddd");

        //list转数组
        //这里如果没有传入String数组,返回的就是Object数组
        String[] str = list.toArray(new String[list.size()]);

        //addAll将其他容器的元素放到List中
        Set<String> set = new TreeSet<>();
        set.add("aaa");
        set.add("ccc");
        set.add("bbb");
        list.addAll(set);
        System.out.println(list);
//      [aaa, ddd, aaa, bbb, ccc]

        //sort排序
        Collections.sort(list);

        //forEach遍历
        list.forEach((ele)-> System.out.println(ele));
    }

2. LinkedList

LinkedList和ArrayList有部分方法同名(虽然实现不一样),此处只列出LinkedList特有的方法。

    public static void main(String[] args) {
   
        LinkedList<String> list = new LinkedList<>();
        list.add("aaa");
        list.add("ccc");
        list.add("bbb");

        list.addFirst("1");
        list.addLast("9");
        list.removeFirst();
        list.removeLast();
    }
Map

1. HashMap

最常用的Map是HashMap,此处只列出基本用法。

    public static void main(String[] args) {
   
        Map<String, Integer> map = new HashMap<>();
        map.put("aaa", 1);
        map.put("bbb", 3);
        map.put("ccc", 2);

        //判断是否有key,返回boolean
        boolean contain = map.containsKey("bbb");

        //判断是否有key,有则返回value,否则返回null
        System.out.<
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值