• Java 常用API



    String类

    1. String代表字符串,是个常量,创建值之后不能再更改
    2. 变更字符串内容实际上是新开了内存空间,并改了记录的地址值,指向新字符串
    创建对象,把数组元素变成一串字符串

    String = new String( byte[] 或者 char[] )

    字符串长度

    int = str.length

    获取部分字符串

    String = str.substring(index)
    String = str.substring(begin , end)

    是否指定开头和结尾

    boolean = str.startsWith("abc")
    boolean = str.endsWith("abc")

    判断字符串是否包含另一个字符串

    boolean = str.contains("abc")

    判断字符串是否为空字符串

    boolean = str.isEmpty()

    返回指定字符串第一次出现的索引值

    int = str.indexOf("abc")
    int = str.indexOf( "abc" , startIndex )

    将字符串转成 字节数组 或 字符数组

    byte[] = str.getBytes() 与 char[] = str.toCharArray()

    将字符串里某些字符或字符串替换成新字符或字符串

    String = str.replace( old , new )

    去除字符串头尾空格,中间不去除

    String = str.trim()

    将字符串转换大小写

    String = str.toLowerCase()
    String = str.toUpperCase()



    StringBuffer、StringBuilder类

    1. 又称可变字符序列,即可变的字符串,其实就是一个容器,容器里存放多个字符串
    2. 长度可变,且支持任意类型(任意类型转成String存储)
    3. 所有容器里的数据最终变成一个字符串
    拼接字符串

    strbuff.append( String )

    移除从start到end的字符串

    strbuff.delete( start , end )

    替换从start到end的字符串

    strbuff.replace( start , end , String )

    反转字符串内容

    strbuff.reverse()



    正则表达式

    1. 通常用来检索、替换一些符合规则的文本(详细后续补坑)
    2. 正则表达式是通过Pattern类与Matcher类实现的;
      • Pattern类用于创建一个正则表达式(匹配模式),只有简单的匹配操作
      • Matcher类提供更强更便捷的正则匹配操作,以及分组支持
    判断字符串是否匹配regex规则

    boolean = str.matches( regex )

    根据regex规则拆分字符串成一个数组

    String[] = str.split( regex )

    将符合regex规则的子字符串替换成新字符串

    String = str.replaceAll( regex , "new" )



    包装类

    基本类型封装成对象,提供更多操作数值的功能:

    Integer = Integet.valueOf( value )
    Character = Character.valueOf( value )

    除上面两个外,其他六个将名字小写改为大写即可

    字符串转基本类型:(静态方法)

    byte = Byte.parseByte("127")
    short = Short.parseShort(str)
    int = Integer.parseInt(str)
    long = Long.parseLong(str)
    float = Float.parseFloat(str)
    double = Double.parseDouble(str)

    在需要的情况下,基本类型与包装类型可以通用

    • 自动拆箱 = 对象转成基本数值
    • 自动装箱 = 基本数值转成对象(在数值范围内,不会新创建对象空间)


    大数据运算

    • BigInteger(整形)
      用不同构造方法可以将 二进制补码形式的btye数组、十进制、字符串、等等等转换为BigInteger
        public static void main(String[] args) {
            //大数据封装为BigInteger对象
            BigInteger big1 = new BigInteger(12345678909876543210);
            BigInteger big2 = new BigInteger(98765432101234567890);
            //add实现加法运算
            BigInteger bigAdd = big1.add(big2);
            //subtract实现减法运算
            BigInteger bigSub = big1.subtract(big2);
            //multiply实现乘法运算
            BigInteger bigMul = big1.multiply(big2);
            //divide实现除法运算
            BigInteger bigDiv = big2.divide(big1);
        }
    
    • BigDecimal(浮点型)

    加:add
    减:subtract
    乘:multiply
    除:divide
    乘次方:pow ( int )
    取绝对值:abs( )
    取反:negate( )
    对比:compareTo ( BigDecimal )
    设置小数精确度:setScale( int )
    保留小数点并选择保留方式(加一或四舍五入):setScale( int , int )

    想要避免精度损失,应先将double类型的值转化为 String,然后用 BigDecimal 类型运算

        public static void main(String[] args) {
            //大数据封装为BigDecimal对象
            BigDecimal big1 = new BigDecimal("0.09");
            BigDecimal big2 = new BigDecimal("0.01");
            BigDecimal big3 = new BigDecimal("1.0");
            BigDecimal big4 = new BigDecimal("0.32");
            BigDecimal big5 = new BigDecimal("1.105");
            BigDecimal big6 = new BigDecimal("100");
            //add实现加法运算
            BigDecimal bigAdd = big1.add(big2);
            //subtract实现减法运算
            BigDecimal bigSub = big3.subtract(big4);
            //multiply实现乘法运算
            BigDecimal bigMul = big5.multiply(big6);
        }
    


    System类

    1. 提供的是对应系统属性信息和系统操作
    2. System类不能手动创建对象,因为被private修饰
    返回以毫秒为单位的当前时间

    long = System.currentTimeMillis()


    Math类

    1. 数学工具类,均为静态方法
    返回输入数的绝对值

    double = Math.abs(double)

    返回两个数最大最小值

    double = Math.max( n , n) 与 double = Math.min( n , n)

    返回参数值四舍五入后的结果

    double = Math.round( double )

    产生一个 [ 0 , 1 ) 的double小数

    double = Math.random()


    Arrays类

    1. 用于操作数组的工具类
    2. 如果指定数组引用是null,会抛出空指针异常
    对指定的int数组进行升序排序

    Arrays.sort( int[] )

    在数组里查找key出现的位置,必须是有序数组

    int = Arrays.binarySearch( int[] , int key)



  • 相关阅读:
    博客搬家申请CSDN至博客园
    关于java8新特性的一些总结
    mysql数据库插入时更改数据
    2017总结
    java中单链表的操作
    工厂设计模式及理解
    筛选法求素数
    tcp粘包,断包问题及处理
    理解B树,B+树
    jvm中锁的优化
  • 原文地址:https://www.cnblogs.com/zohnn/p/11185402.html
Copyright © 2020-2023  润新知