1.JavaSE知识点总结(常用类)

第六章    常用类
1.String的实现原理,内存的存储方式
    1.java中规定凡是双引号括起来的字符串,是不可变的。
    2.字符串是存储在字符串常量池当中。
    3.new对象的时候一定在堆内存开辟空间,再去指向常量池中的字符串。
    4.String类重写了toString和equals方法。
    String s1="abc";
    s1中保存的不是字符串,而是字符串对象的内存地址。
2.String的构造方法
    byte[] bytes={97,98,99}
    String s="";
    new String("");
    new String(bytes);//abc
    new String(bytes,1,2);//bc
    new String(char[] chars);同理bytes
3.String的常用方法
    1.char charAt(int index);
    2.int compareTo(String otherString);1:相等,-1:前小后大,1:前大后小。
    3.boolean "".contains("");
    4.boolean "".endWith();
    5.boolean "".startWith();
    6.boolean "".equals"";
    7.boolean "".equalsIgnore"";忽略大小写进行比较
    8.byte[] getBytes();
    9.int indexOf("");判断某个子字符串在当前字符串第一次出现的索引
    10.last indexOf("");与上面相反
    11.boolean isEmpty();
    12.int length();
    13.replace(old new);
    14.String[] split("");
    15.String subString(int beginIndex,int endIndex);左闭右开
    16.Char[] toCharArray();
    17.String toLowerCase();转换小写
    18.String toUpperCase();转换大写
    19.String trim();去除前后空白
    20.String valueOf();将非字符串转换为字符串
4.StringBuilder StringBuffer的常用方法?以及和String的区别?
    StringBuffer 底层:容量为16的字节数组,没有final修饰,可以进行扩容
             优化:创建StringBuffer的时候,尽量给一个初始化容量,最好减少扩容次数。
    StringBuilder 区别:StringBuffer前面有synchronized关键字修饰,表示在多线程环境下是安全的。
                StringBuilder多线程不安全
5.八种基本数据类型对应的包装类  
   1.Integer为代表
   将数字123转换为包装类型
   Integer t = new Integer(123);
   float f = t.floatValue();
   引用数据类型转换基本数据类型(拆箱)

   2.自动拆箱和自动装箱
    引用数据类型--->基本数据类型(拆箱)
    基本数据类型--->引用数据类型(装箱)

   3.Integer、int、String三种类型的互相转换
    Integer.MAX_VALUE获取最大值
    Integer.MIN_VALUE获取最小值

    String---->Integer
    Integer t = Integer.valueOf("100");
    Integer----->String
    String a = String.valueOf(Integer对象);

    String ----->int
    int value = Integer.parseInt("1234");
    int ----->String
    String a = 1+"";
    String.valueOf(1);

    int ----->Integer
    Integer a = Integer.valueOf(100);
    Integer ----->int
    intValue();    

    Integer----->二进制字符串
    String a = Integer.toBinaryString(int a)

    十进制----->十六进制(Object中的toString中的hascode用到)
    String a = Integer.toHexString(int a);
    
    十进制----->八进制
    String a = Integer.toOctalString(int a);
    
    自动装箱
    Integer t = 100;
    自动拆箱
    int y = t;

    Integer t1 = 128;
    Integer t2 = 128;
    t1==t2 //false;
    
    Integer t3 = 127;
    Integer t4 = 127;
    t3==t4 //true;
    原因:[-128,127]为了方便使用,早已在方法区整数型常量池(cache:也就是缓存机制)创建好。
    缓存机制:优化大型项目的手段。
         缺点:占用内存
         优点:效率高    
6.数字的处理  
  1.NumberFormat
        //1.Date---->String
        //日期格式化:SimpleDateFormat
        Date date = new Date();
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss sss");
        String string = sdf.format(date);
        System.out.println(string);        
  BigDecimal(财务数据)
        //8.java.math.BigDecimal 引用数据类型 常用于财务
        BigDecimal decimal = new BigDecimal(100);
        BigDecimal decimal2 = new BigDecimal(200);
        BigDecimal add = decimal.add(decimal2);
        BigDecimal divide = decimal2.divide(decimal);
        System.out.println(add);
        System.out.println(divide);                       
7.日期处理
    怎样获取当前时间
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss sss");
        String string = sdf.format(date);
        System.out.println(string);
    怎样获取毫秒
    //3.获取1970-01-01到系统当前时间毫秒
        long currentTimeMillis = System.currentTimeMillis();
        System.out.println(currentTimeMillis);//1635161664289
    怎样进行日期格式化
    //日期格式化:SimpleDateFormat
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss sss");
        String string = sdf.format(date);
        System.out.println(string);
    怎样将字符串日期转换成日期类型Date
    //2.String----->Date
        String time = "2088-08-08 08:08:08 888";
        Date parse = sdf.parse(time);
        System.out.println(parse);
8.枚举类型
    枚举:是一种引用数据类型
        enum 枚举类型名{
            枚举值1,枚举值2
        }
    结果只有两种情况的建议使用布尔类型
    超过两种的,可以一枚一枚列出来的建议使用枚举类型(颜色,四季等)
     switch语句支持枚举
     byte short int char 枚举 可以作为switch中的对象
9.随机数
        //创建随机数对象
        Random random = new Random();
        //获取[0-4]的随机数
        int num = random.nextInt(5);

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值