java常用类

java常用类

包装类

针对八种基本数据类型相应的引用类型—包装类

java常用类_第1张图片

  • 包装类和基本数据类型的转换

    装箱:基本数据类型->包装类型

    拆箱:包装类型->基本数据类型

    int n1 = 100;
    Integer	integer = new Integer(n1);//手动装箱
    int i = integer.intValue();//手动拆箱
    ---
    int n2=200;
    Integer integer = n2;//自动装箱
    int n3 = integer;//自动拆箱
    
  • Integer 类和 Character 类的常用方法

    System.out.println(Integer.MIN_VALUE); //返回最小值
    System.out.println(Integer.MAX_VALUE);//返回最大值
    System.out.println(Character.isDigit('a'));//判断是不是数字
    System.out.println(Character.isLetter('a'));//判断是不是字母
    System.out.println(Character.isUpperCase('a'));//判断是不是大写
    System.out.println(Character.isLowerCase('a'));//判断是不是小写
    System.out.println(Character.isWhitespace('a'));//判断是不是空格
    System.out.println(Character.toUpperCase('a'));//转成大写
    System.out.println(Character.toLowerCase('A'));//转成小写
    

String类

​ 1.String 对象用于保存字符串,也就是一组字符序列

  1. “jack” 字符串常量, 双引号括起的字符序列

  2. 字符串的字符使用 Unicode 字符编码,一个字符(不区分字母还是汉字)占两个字节

  3. String 类有很多构造器,构造器的重载

  4. . String 类实现了接口 Serializable【String 可以串行化:可以在网络传输】接口 Comparable [String 对象可以比较大小]

  5. String 是 final 类,不能被其他的类继承

  6. . String 有属性 private final char value[]; 用于存放字符串内容

  7. 一定要注意:value 是一个 final 类型, 不可以修改(需要功力):即 value 不能指向新的地址,但是单个字符内容是可以变化

  • 创建string对象的两种方式

    String s1 = "xun";
    //先从常量池中查看是否有`xun`的数据空间,如果有,直接指向;如果没有,则重新创建,然后指向,s1最终指向的是常量池的空间地址
    String s2 = new String("xun");
    //现在堆中创建空间,里面维护了value属性,指向常量池的xun空间,如果常量池中没有xun,重新创建,如果有,直接通过value指向,最终指向的是堆内的空间
    
  • String类的常见方法

    String类是保存字符串常量的,每次更新都需要重新开辟空间,效率极其低,因此还提供了StringBuffer和StringBuilder来增强String的功能来提高效率

	equals()//区分大小写,判断内容是否相等
	equalsIgnoreCase() //忽略大小写的判断内容是否相等
    length()// 获取字符的个数,字符串的长度
    indexOf()// 获取字符在字符串对象中第一次出现的索引,索引从 0 开始,如果找不到,返回-1
    lastIndexOf()// 获取字符在字符串中最后一次出现的索引,索引从 0 开始,如果找不到,返回-1
    substring()// 截取指定范围的子串
    toUpperCase()// 转换成大写
    toLowerCase()//转换成小写    
    concat()// 拼接字符串    
    replace()// 替换字符串中的字符  
    split()// 分割字符串, 对于某些分割字符,我们需要 转义比如 |    
    toCharArray()// 转换成字符数组    
    compareTo()// 比较两个字符串的大小,如果前者大,则返回正数,后者大,则返回负数,如果相等,返回 0    

StringBuffer类

StringBuffer代表的是可变的字符序列,可以对字符串的内容进行增删

很多方法与String相同,但StringBuffer是可变长度的

StringBuffer是一个容器

因为 StringBuffer 字符内容是存在 char[] value, 所有在变化(增加/删除)不用每次都更换地址(即不是每次创建新对象), 所以效率高于 String

  • String VS StringBuffer

    String保存的是字符串常量,里面的值不能更改,每次String类的更新实际上都是更新地址,效率低

    StringBuffer保存的是字符串变量,里面的值可以修改,每次更新实际上是更新内容,而不是地址

StringBuilder类

一个可变的字符序列,此类提供了一个与StringBuffer相兼容的API,但不保证同步(StringBuilder不是线程安全的)它用在字符串缓冲区被单个线程使用的时候

StringBuilder上的主要操作时apend和insert方法,可以重载这些方法。

  • String:不可变字符序列,效率低,复用率高
  • StringBuffer:可变字符序列,效率较高(增删),线程安全
  • StringBuilder:可变字符序列,效率最高,线程不安全

Math类

abs()// 绝对值
pow()// 求幂
ceil()// 向上取整,返回>=该参数的最小整数(转成 double)
floor()// 向下取整,返回<=该参数的最大整数(转成 double)
round()// 四舍五入 Math.floor(该参数+0.5)
sqrt()// 求开方
random()// 求随机数,random 返回的是 0 <= x < 1 之间的一个随机小数
max() , min() //返回最大值和最小值

Arrays类

  • 常见方法

    Arrays里面包含了一系列静态方法,用于管理或操作数组
        toString()//返回数组字符串形式
        sort()//排序
        binarySearch()//通过二分搜索法进行查找,要求必须排好序
        copyOf()//数组元素的复制
        fill()//数组元素的填充
        equals()//比较两个数组元素内容是否完全一致
        asList()//将一组值转换为List
    

System类

  • 常见方法

    System.exit(0);
    //1. exit(0) 表示程序退出
    //2. 0 表示一个状态 , 正常的状态
    System.arraycopy(src, 0, dest, 0, src.length);
    //srcPos: 从源数组的哪个索引位置开始拷贝
    //dest : 目标数组,即把源数组的数据拷贝到哪个数组
    // length: 从源数组拷贝多少个数据到目标数组
    System.currentTimeMillis()
    //currentTimeMillens:返回当前时间距离 1970-1-1 的毫秒数
    

你可能感兴趣的:(java,java)