• Java API速记手册(持续更新ing...)


    诸神缄默不语-个人CSDN博文目录

    之所以干这个事原因也很简单,因为我3年没写Java了,现在在复健。
    因为我最近都在用Python,所以跟Python一样的部分我就不写了。
    很多内容是几句话说不清的,我就会另开一篇博文来写,链接也放到本文中。

    1. 最基本的框架
      public class MainClass {
          public static void main(String[] args) {
              //主函数代码
          }
      }
      
      • 1
      • 2
      • 3
      • 4
      • 5
    2. 打印:System.out.println(打印内容);
    3. 内置对象
      Java数组(未完待续)
    4. 实例化对象
      1. 内置对象
        int x=1;
      2. 自定义对象:类名 实例名=new 类名();
    5. 对象类型转换
      1. 将float转int1
        1. Float类的intValue()
        Float f = 10.5f;
        int i = f.intValue();
        System.out.println("Float转Int:" + i);
        
        • 1
        • 2
        • 3
        1. 强制转换
        float f1 = 10.5f;
        int i1 = (int) f1;
        System.out.println("浮点型强制转换为整型:" + i1);
        
        • 1
        • 2
        • 3
    6. 循环(Java循环(未完待续)
    7. 条件语句2
      1. if
        if(布尔表达式)
        {
           //如果布尔表达式为true将执行的语句
        }
        
        • 1
        • 2
        • 3
        • 4
      2. if-else
        if(布尔表达式){
           //如果布尔表达式的值为true
        }else{
           //如果布尔表达式的值为false
        }
        
        • 1
        • 2
        • 3
        • 4
        • 5
    8. static静态方法
      private私有方法
      final3
    9. Arrays类
      1. 赋值 fill()
        public static void fill(arrayname,value)
        public static void fill(arrayname ,starting index ,ending index ,value)
      import java.util.*;
      public class Example{
          public static void main(String[] args) {
              int array[] = new int[10];
              Arrays.fill(array, 1);
              for (int arrays:array) {
                  System.out.print(arrays+" ");
              }
              System.out.println();
              Arrays.fill(array, 3, 6, 9);
              for (int arrays:array) {
                  System.out.print(arrays+" ");
              }
          }
      }
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      输出:
      1 1 1 1 1 1 1 1 1 1 
      1 1 1 9 9 9 1 1 1 1 
      
      • 1
      • 2
      1. 排序 sort()
        public static void sort(Object[] arrayname) 对一个数组的所有元素进行排序,并且是按从小到大的顺序
        public static void sort(Object[] arrayname,int fromIndex, int toIndex) 对数组部分排序,也就是对数组a的下标从fromIndex到toIndex-1的元素排序
        import java.util.*;
        public class Example{
            public static void main(String[] args) {
                int array[] = {2,5,85,30,75,66,-18,0};
                Arrays.sort(array,2,5);
                for (int arrays:array) {
                    System.out.print(arrays+" ");
                }
                System.out.println();
                Arrays.sort(array);
                for (int arrays:array) {
                    System.out.print(arrays+" ");
                }
            }
        }
        
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
        • 8
        • 9
        • 10
        • 11
        • 12
        • 13
        • 14
        • 15
        输出:
        2 5 30 75 85 66 -18 0 
        -18 0 2 5 30 66 75 85 
        
        • 1
        • 2
        Arrays.sort()的底层原理:
        假设数组长度为n
        1<=n<47,使用插入排序
        47<=n<286,使用快速排序
        n>=286,使用归并排序或快速排序(有一定顺序使用归并排序,毫无顺序使用快速排序)
      2. 查找 binarySearch()
        用二分法查找:数组在调用前必须排序好
        public static int binarySearch(Object[] a,Object key) 在一个数组的所有元素中进行查找

        返回值:
        在数组范围内,索引值为“ - 插入点索引值”
        小于数组内元素,索引值为 – 1
        大于数组内元素,索引值为 – (length + 1)

        public static int binarySearch(Object[] a,int fromIndex,int toIndex,Object key) 在该数组指定的范围内进行查找

        返回值:
        在搜索范围内,索引值为“ - 插入点索引值”
        小于搜索范围内元素,返回–(fromIndex + 1)
        大于搜索范围内元素,返回 –(toIndex + 1)
        import java.util.*;
        public class Example{
            public static void main(String[] args) {
                int array[] = {2,5,85,30,75,66,-18,0};
                Arrays.sort(array);
                for (int arrays:array) {
                    System.out.print(arrays+" ");
                }
                System.out.println();
                System.out.println(Arrays.binarySearch(array,5));
                System.out.println(Arrays.binarySearch(array,-99));
                System.out.println(Arrays.binarySearch(array,100));
                System.out.println(Arrays.binarySearch(array,60));
                System.out.println(Arrays.binarySearch(array,1,5,5));
                System.out.println(Arrays.binarySearch(array,1,5,-99));
                System.out.println(Arrays.binarySearch(array,1,5,100));
                System.out.println(Arrays.binarySearch(array,1,5,60));
            }
        }
        
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
        • 8
        • 9
        • 10
        • 11
        • 12
        • 13
        • 14
        • 15
        • 16
        • 17
        • 18
        • 19
        输出:
        -18 0 2 5 30 66 75 85 
        3         //5在数组内,返回排完序后的索引3
        -1        //-99小于数组内元素,返回索引值为-1
        -9        //100大于数组内元素,返回索引值为-(length+1)=-(8+1)
        -6        //60在数组范围内,返回索引值为-插入点索引值=-6
        3         //5在搜索范围内,返回排完序后的索引3
        -2        //-99小于搜索范围内元素,返回–(fromIndex + 1)=-(1+1)=-2
        -6        //100大于搜索范围内元素,返回–(toIndex + 1)=-(5+1)=-6
        -6        //60在搜索范围内,索引值为-插入点索引值=-6`
        
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
        • 8
        • 9
      3. 比较 equals()
        如果两个指定的数组彼此相等,则返回 true。如果两个数组包含相同数量的元素,并且两个数组中的所有相应元素对都是相等的,则认为这两个数组是相等的。换句话说,如果两个数组以相同顺序包含相同的元素,则两个数组是相等的。
        public static boolean equals(Object[] arrayname,Object[] arrayname2)
      import java.util.*;
      public class Example{
          public static void main(String[] args) {
              int[] array1 = {2,5,85,30,75,66,-18,0};
              int[] array2 = {75,2,66,30,5,85,0,-18};
              
              if(Arrays.equals(array1, array2)){
                  System.out.println("array1等于array2");
              }
              else{
                  System.out.println("array1不等于array2");
              }
              
              Arrays.sort(array1);
              Arrays.sort(array2);
              
              for(int arrays:array1){
                  System.out.print(arrays+" ");
              }
              System.out.println();
              for(int arrays:array2){
                  System.out.print(arrays+" ");
              }     
              System.out.println();
              
              if(Arrays.equals(array1, array2)){
                  System.out.println("排序后,array1等于array2");
              }
              else{
                  System.out.println("排序后,array1不等于array2");
              }
          }
      }
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17
      • 18
      • 19
      • 20
      • 21
      • 22
      • 23
      • 24
      • 25
      • 26
      • 27
      • 28
      • 29
      • 30
      • 31
      • 32
      • 33
      输出:
      array1不等于array2
      -18 0 2 5 30 66 75 85 
      -18 0 2 5 30 66 75 85 
      排序后,array1等于array2
      
      • 1
      • 2
      • 3
      • 4
      1. 复制
        copyOf() 将原始数组的元素,复制到新的数组中,可以设置复制的长度(即需要被复制的元素个数) public static Object[] copyOf(original,newLength)

        copyOfRange() 将某个范围内的元素复制到新的数组中 public static Object[] copyOfRange(original,int from,int to) from为拷贝的开始位置(包含),to为拷贝的结束位置(不包含)
      import java.util.*;
      public class Example{
          public static void main(String[] args) {
              int[] array1 = {2,5,85,30,75,66,-18,0};
              int[] array2 = Arrays.copyOf(array1, 6);
              int[] array3 = Arrays.copyOfRange(array1, 2, 4);
              System.out.println(Arrays.toString(array1));
              System.out.println(Arrays.toString(array2));
              System.out.println(Arrays.toString(array3));       
          }
      }
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      输出:
      [2, 5, 85, 30, 75, 66, -18, 0]
      [2, 5, 85, 30, 75, 66]
      [85, 30]
      
      • 1
      • 2
      • 3
    10. Deque stack = new ArrayDeque();
      stack.push(Integer.parseInt(arr[i]));
      stack.peek()
      stack.pop();
    11. 列表List list = new ArrayList();
      列表转字符串:String str = list.toString(); String.join(" ", nums);
      list.add(factor);
    12. 字符串按分隔符分割为数组:String[] arr = data.split(", "); nums = Arrays.asList(data.split(" "));
    13. 字符串切片:str.substring(1, str.length() - 1);
    14. 检验对象是否为None(Java中None就是光声明不创建):data.isEmpty()
    15. 属性和方法:length size()
    16. Integer.MIN_VALUE
      Integer.MAX_VALUE
    17. 数字转字符串:String.valueOf(root.val)
    18. Integer.parseInt(nums.get(i))
    19. Math类
      1. min()4
        public class Test{
            public static void main(String args[]){
                System.out.println(Math.min(12.123, 12.456));      
                System.out.println(Math.min(23.12, 23.0));  
            }
        }
        
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        输出结果:
        12.123
        23.0
        
        • 1
        • 2
    20. Number对象
      1. compareTo()5
        public int compareTo( NumberSubClass referenceName )
      public class Test{ 
         public static void main(String args[]){
            Integer x = 5;
            System.out.println(x.compareTo(3));
            System.out.println(x.compareTo(5));
            System.out.println(x.compareTo(8));            
           }
      }
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      输出:
      1
      0
      -1
      
      • 1
      • 2
      • 3

    本文撰写过程中使用的其他参考资料

    1. Java 浅谈数组(Array)和列表(ArrayList)的区别 介绍Arrays常用方法_数组和列表的区别_senxu_的博客-CSDN博客

    1. Java中Float怎么转Int类型? - IT视野 ↩︎

    2. Java 条件语句 – if…else | 菜鸟教程 ↩︎

    3. Java笔记 private、final、static(静态域与方法)_private static final_三朵耳朵的博客-CSDN博客 ↩︎

    4. Java min() 方法 | 菜鸟教程 ↩︎

    5. Java compareTo() 方法 | 菜鸟教程 ↩︎

  • 相关阅读:
    代码执行相关函数以及简单例题
    centos系统下RabbitMQ安装教程
    filebrowser 文件系统搭建与使用
    备考A-Level学校该选中文数学还是英文数学?
    对MDB数据库进行查询、删除记录、添加等功能的实现
    医学图像分割利器:U-Net网络详解及实战
    深入理解Spring四大元注解DIRT
    浅浅的聊一下 WebSocket
    linux下sed用法
    计算机毕业设计(附源码)python租车信息管理系统
  • 原文地址:https://blog.csdn.net/PolarisRisingWar/article/details/132195488