java 编程中常用的API

精选30+云产品,助力企业轻松上云!>>> hot3.png

Q:List怎么转数组?
A:
使用list.toArray(T[] )接口
注意先建数组再转, 直接转是错误的,因为他是object类型。

       List list = new ArrayList();
        list.add(1);
        list.add(2);
        list.add(3);
 
        // 转为object,注意list.toArray()只能转为Object[]
        Object[] objectArr = list.toArray();
 
        // 转为对应类型的arr
        Integer[] intArr = new Integer[list.size()];
        list.toArray(intArr);
 
        System.out.println(Arrays.toString(objectArr));
        System.out.println(Arrays.toString(intArr));

Q: 数组怎么转list
A:
利用Arrays.toList(T[])

        // 直接创建的方式
        List unModifyList1 = Arrays.asList(1,2,3,4);
 
        // 数组变量方式,注意不能为int[],否则会类型不正确
        // 这种方式生成的list不可变
        Integer[] arr = {1,2,3,4};
        List unModifyList2 = Arrays.asList(arr);
 
        // 这种方式生成的list可变
        List canModifyList = new ArrayList(Arrays.asList(arr));


Q:
怎么初始化list并填充初始值
A:
使用Collections.nCopies
注意new ArrayList<>(8,1);并不是指填充了8个1。

        List fillList = new ArrayList(Collections.nCopies(5,1));
        System.out.println(fillList);
 
        Collections.fill(fillList, 2);
        System.out.println(fillList);

Q:
如何反转list
A:
使用Collections.reverse(list)


如何反转字符串?
我自己用的是StringBuilder里的反转(好羡慕python处理字符串时的简单)

String reverStr = new StringBuilder(str).reverse().toString();

Q: 如何对list做排序(重要)
A:
数组用Arrays.sort(数组)
list用Collection.sort(list)
排序的元素要实现comparator接口。对于基本类型都是升序排序,string则按照字典序升序。


Q: 自定义排序
A:
实现Comparable接口
在comparable接口中,有个输入的对象other

可以理解为排序时
外界other放到自己后面,然后和自己比较
如果满足返回值大于0,则交换自己和外界o对象的位置
那么这里x<0.x,则交换,所以大的在前面。 优先队列同理,变成大顶堆

    static class Node implements Comparable {
        int x;
 
        public Node(int x) {
            this.x = x;
        }
 
        public int compareTo(Node other) {
            if (x < other.x) {
                return 1;
            } else if (x > other.x){
                return -1;
            } else {
                return 0;
            }
        }
    }

Q: java的队列

A:
注意队列的实现是LinkedList, 入队是offer,出队是pool

Queue queue = new LinkedList();
queue.offer("abc")
String outStr = queue.poll();

java 编程中常用的API_第1张图片

你可能感兴趣的:(java 编程中常用的API)