javaSE基础学习04(常用类)

javaSE基础学习04

  1. 常用类
    1. String

      1. 字符串对象的创建

        1. 直接等于 如 String str = “nnnn”

          //直接等是在字符串常量池创建字符串
          //如果存在该字符串,重新创建该字符串内容的时候会把常量池字符串地址给它
          
           String str1 = "abc";
          
           String str2 = "abc";
          //比较为真,因为它们在字符串常量池使用同一个地址
           str1==str2   
          
        2. new 对象 如 String str = new String(“abc”);

          //字符串 new对象的时候,会去字符串常量池看是否有这个字符串的对象,
          //如果没有  就会在堆中和字符串常量池中各创建一个对象,并且将堆中对象的地址返回
          
          String str = new  String("abc");
          
          String str = new  String("abc");
          
          // 总共创建了三个对象,常量池中也有一个字符串对象
          //比较为假,因为它们在堆中使用了不同的地址
          str1==str2   
          
      2. String类型的特点

        1. 字符串是final修饰的char数组,对字符串调用的任何方法都不能修改原字符串,只是另外生成了一个字符串并且返回
      3. String类中的方法

        String中的方法作用返回值
        String(String s)将一个字符串构造成字符串对象字符串对象
        String(char[] arr)将一个字符数组构造成一个字符串对象字符串对象
        String(char[] arr,int index,int count);将一个字符数组指定开始下标和长度的字符构造成一个字符串对象字符串对象
        equals(String s)比较两个字符串的值是否相等 str1.equals(str2)boolean
        startsWith(String s)判断字符串是否以什么字符串开始boolean
        endWith(String s)判断字符串是否以什么字符串结束boolean
        equalsIgnoreCase(String s);判断两个字符串是否内容相同,忽略大小写boolean
        length()获取字符串长度int
        charAt(int index);获取指定索引位置的字符char
        toCharArray()字符串转换为char数组char[]
        toString()转换为字符串String
        split(String s)分割字符串String[]
        substring(int index)截取字符串String
        trim()去除字符串首位空格String
        replace(String a,String b)将字符串中第一个a的字符串替换成b的字符串String
        String.valueOf()String类中唯一的静态方法,作用是将 方法小括号内的内容转换为字符串,是String类中的重要方法String
    2. StringBuilder和StringBuffer

      1. StringBuilder

        1. 处理多个字符串拼接的场景

        2. 可以对原字符串进行修改

        3. 方法和String类中方法基本一致

      2. StringBuffer

        1. 线程安全的字符串,用的少
    3. Math

      1. 工具类,无法直接创建对象

      2. 可以使用工具类的各种方法进行数学运算

        Math类常用方法作用返回值
        add(int a ,int b)将两个数进行相加,返回相加之后的结果int
        sub(int a,int b)将两个数进行相减,返回a-b的结果int
        multiplyExact(int a, int b)将两个数进行相乘,返回a*b的结果int
        floorDiv(int a, int b )将两个数进行相除(地板除),返回a/b的结果int
        floor(double a)将小数向下取整double
        floor(double a)将小数向上取整double
        round(double a)可以达到四舍五入的效果,实际上是把数据+0.5再进行向下取整double
        max(int a , int b)返回两个数中最大的那个int
        min(int a , int b)返回两个数中最小的那个int
        pow(double x,double y)求 x的 y次方double
        sqrt(double x)求x的平方根double
        abs(int x)求x的绝对值int
        random()获取一个0-1之间的随机数double
    4. Random

      1. 取随机数,可使用这个类

      2. 创建对象

        Random类常用方法作用返回值
        Random()构造Random对象,如果需要获取不同的随机数,则需要使用
        Random(int seed)构造Random对象,加了种子的构造方法,每次获取的随机数值都是固定
        nextInt()nextInt()在整数范围内获取随机数int
        nextInt(int bound)在限制的范围内获取随机数,0~bound,不包含boundint
    5. BigDeicmal

      1. 可进行精确计算,基本数据类型,存在小数位不一致的情况,计算后会产生误差

        //必须要将需要计算的数据转换成字符串,再调用BigDeicmal的 有参构造 方法。最后对对象进行操作计算,否则也是不准确的
        BigDeicmal  bg = new BigDeicmal(String a);
        
      2. 常用方法和Math 类方法基本一致

    6. Date

      1. 日期类,默认对象会显示当前日期(机器系统时间)

      2. 常用方法

        Date类常用方法作用返回值
        Date( )构造方法,使用当前日期和时间来初始化对象。
        Date(long millisec)构造函数接收一个参数,该参数是从1970年1月1日起的毫秒数。
        getTime()返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。long
        setTime(long time)用自1970年1月1日00:00:00 GMT以后time毫秒数设置时间和日期void
        toString( )把此 Date 对象转换为以下形式的 String: dow mon dd hh:mm:ss zzz yyyy 其中: dow 是一周中的某一天 (Sun, Mon, Tue, Wed, Thu, Fri, Sat)。String
    7. SimpleDateFormat

      1. 可格式化输出Date

      2. DateFormat df = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”); 调用df.format(Date d),进行格式化输出

      3. 常用方法

        1. format(Date d) 将日期转化成字符串输出
        2. parse(String s) 解析字符串
    8. Calendar

      1. 日历类,进行获取时间 年月日等操作

      2. Calendar c = Calendar.getInstanse(); (创建对象,这种创建对象的都是单例设计模式的类)

      3. 常用方法

        Calendar类常用方法作用返回值
        add(Calendar.DATE, 10);在当前时间上加上10天返回加上10天后的对象
        set(Calendar.YEAR,2008);将年设置为2008年返回设置后的对象
        get(Calendar.DATE);获取日期int
      4. Calendar类对象字段类型

        常量描述
        Calendar.YEAR年份
        Calendar.MONTH月份
        Calendar.DATE日期
        Calendar.DAY_OF_MONTH日期,和上面的字段意义完全相同
        Calendar.HOUR12小时制的小时
        Calendar.HOUR_OF_DAY24小时制的小时
        Calendar.MINUTE分钟
        Calendar.SECOND
        Calendar.DAY_OF_WEEK星期几
    9. 包装类

      1. 基础类型对应的包装类
      基础数据类型对应的包装类
      byteByte
      shortShort
      intInteger
      longLong
      floatFloat
      doubleDouble
      charCharactor
      booleanBoolean
      1. 自动装箱,基本数据类型 自动转换为 包装类对象

      2. 自动拆箱,包装类对象自动转换为 基本数据类型

      3. 手动拆箱,如:调用 intValue()方法对包装类进行拆箱

      4. 将字符串转换为包装类。Integer.parse(String s);字符串不能包含字母

      5. 包装类,常量池的 字节是8位,所以==只能比较 -128-127 范围内的 对象值,对象值超出范围 一律结果为false,因为超出常量池范围,都会去新建对象

      6. 基本数据类型只能接受数据,包装类除了可以接收数据,还可以接收 null

    10. File

      1. 文件类,可对文件进行操作

      2. 常用方法

        File 类常用方法作用返回值
        getName()获取文件或文件夹的名称,不包含上级路径。String
        getPath()获取文件的绝对路径String
        getAbsolutePath()获取文件的绝对路径String
        getAbsoluteFile()获取文件的绝对路径File
        getParentFile()获取父文件路径File
        list()找文件夹下的所有文件和文件夹String[]
        mkdir()创建文件夹,方法必须要父文件夹存在File
        mkdirs()创建文件夹,在父文件夹不存在的情况下会逐级创建文件夹File
        exists()判断文件是否存在boolean
        length()获取文件大小。 字节长度long
        isFile()判断文件是否 文件boolean
        isDirectory()判断文件是否 目录boolean
    11. Scanner

      1. 用户输入相关的类

      2. 常用方法

        Scanner常用方法作用返回值
        nextLine()获取一行,已回车作为结束String
        next()获取一个单词,以空白输入作为结束String
      3. 注意事项

        1. nextLine(),所以如果上面是获取数字,按下回车,则回车会自动获取到nextLine()中,导致用户无法输入信息。
          1. 规避方法1:再换行一次nextLine(),清空上一个输入流没读完的回车
          2. 规避方法2:重新 new Scanner(),每一个输入流是一个对象,之间就不会互相影响了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值