代码改变世界

JAVA编程思想学习笔记6-chap16-18-斗之气6段

2019-02-26 08:49  剑动情缥缈  阅读(224)  评论(0编辑  收藏  举报

1.java.util.Arrays

package com.chengjie;

import java.util.Arrays;
import java.util.List;

public class TestArrays {
    public static void main(String[] args) {
//        int[] array1 = new int[10];
        int[] array1 = { 1, 3, 5, 7, 9, 2, 4, 6, 8, 10};
        Arrays.sort(array1);
        Arrays.parallelSort(array1);
        Arrays.parallelPrefix(array1, (left, right) ->{
//            System.out.println(Arrays.toString(array1));
            return left + right;
        });
        System.out.println(Arrays.toString(array1));
        System.out.println(Arrays.binarySearch(array1, 15));
        Arrays.fill(array1, 5);
        int[] array2 = null;
        array2 = Arrays.copyOf(array1, 5);
        Arrays.fill(array2, 3);
        int[] array3 = Arrays.copyOfRange(array2, 0, 4);
        Arrays.setAll(array3, i -> i * 10);
        System.arraycopy(array1,0, array2, 0, 3);
        System.out.println(Arrays.toString(array2));
        System.out.println(Arrays.toString(array3));
        List<String> listString = Arrays.asList("hello", "world");
        System.out.println(listString);
    }
}
View Code

2.容器完整类库图

3.Set

  • HashSet:特定顺序,需要实现hashCode()方法
  • TreeSet:按照大小排序,需要实现Comparable接口
  • LinkedHashSet:按照插入顺序保存元素,需要实现hashCode()方法

4.Map

  • HashMap:需要实现①equals()方法-比较键②hashCode()方法-生成散列值
  • 计算散列值--获取数组index---比较key---获取value

5.最佳实践:实现equals()的同时实现hashCode()

6.java.util.Collections

7.流

 

 

8.java.nio(non-blocking IO)非阻塞IO

  • Buffers
  • Channels
  • Selectors