浏览器标题切换
浏览器标题切换end

寒假Day42:JAVA-OOP-java核心类

  • string名字+‘toUpperCase()’:全变大写

  • 两个字符串比较,必须总是使用equals()方法:s1.equals(s2)

  • 要忽略大小写比较,使用equalsIgnoreCase()方法。

  • 判断是否包含子串:"s1内容".contains("s2内容")

  • 第一个匹配项位置:"s1内容".indexOf("s2内容")

  • 最后一个匹配项位置:"s1内容".lastIndexOf("s2内容")

  • 提取子串:"s1内容".substring(...)    括号里面可以填开始位置或者起始位置(中间逗号隔开)

  • 空白字符:空格、\t、\r、\n     中文的空格字符:\u3000

  • 要把字符串转换为其他类型,就需要根据情况。例如,把字符串转换为int类型

    int n1 = Integer.parseInt("123"); // 123
    
    int n2 = Integer.parseInt("ff", 16); // 按十六进制转换,255
  •  要把任意基本类型或引用类型转换为字符串,可以使用静态方法valueOf  

String.valueOf(678); // "678"
  •  java标准库提供了StringBuilder,往StringBuilder中新增字符时,不会创建新的临时对象;还可以进行链式操作。

  • 引用类型:所有classinterface类型;引用类型可以赋值为null,表示空,但基本类型不能赋值为null。

  • 自动拆箱执行时可能会报NullPointerException。
  • 创建新对象时,优先选用静态工厂方法(节省内存)而不是new操作符。

  • 静态方法parseInt()可以把字符串转换成一个整数
int x1 = Integer.parseInt("100"); // 100
int x2 = Integer.parseInt("100", 16); // 256  按16进制
System.out.println(Integer.toString(100)); //10进制
System.out.println(Integer.toHexString(100)); // 16进制
System.out.println(Integer.toOctalString(100)); // 8进制
System.out.println(Integer.toBinaryString(100)); // 转换成2进制
  • java中,没有无符号整型(Unsigned)的基本数据类型,最高位是符号位。

  • 定义枚举类:通过关键字enum实现。
  • 引用类型比较,要始终使用equals方法,但enum类型可以直接使用==比较。

  • java.math.BigInteger:表示任意大小的整数。BigInteger内部用int数组来模拟一个非常大的整数,它没有范围限制,但是速度比较慢。

  • BigInteger转换成基本类型时可使用longValueExact()、intValueExact()等方法保证结果准确,否则转换的时候会丢失高位信息,类似C中的精度损失,造成结果不准确;在转换时如果超出范围,将直接抛出ArithmeticException异常。

 

posted @ 2020-03-06 18:51  抓水母的派大星  阅读(114)  评论(0编辑  收藏  举报