Java常用类简单概括

来源:互联网 发布:知乎等论坛 编辑:程序博客网 时间:2024/05/21 15:42

1.在使用浮点数floatdouble时存在精度错误问题,因为计算机是二进制的,而浮点数并不能进行二进制运算。

2.Math.random(); -->随机数

    Math.PI; -->π的值

    Math.abs(),-->求绝对值

    Math.ceil(); -->向上取整

    Math.floor(); -->向下取整

    Math.round(); -->四舍五入 返回int类型(-1.5   -1!!)

    Math.pw(5,3); -->平方125

    Math.sqrt(3); -->开平方1.732

3. String一些类:使用final修饰的为不可变类,一旦定义之后不可以更改(存储)

  1) string.charAt(int index); -->返回index处的char值。

  2) string.compareTo(String anotherString); -->此字符串大于字符串参数返回大于1的值。

  3) string.compareTognoreCase(String str); -->此字符串大于字符串参数返回大于1的值,不考虑大小写。

  4) string.concat(String str); -->参数字符串连接到此字符串的结尾。

  5) string.equals(Object anObject);-->两个String类型是否true false

  6) string.format(Locale 1,String format,Object... args);-->使用指定 的语言环境、格式字符串和参数返回一个格式化      字符串

  7) string.indexOf(int ch);-->返回指定字符在此字符串中第一次出现处的索引。

     string.indexOf(int ch,int fromIndex);-->返回从指定索引开始第一次出现指定字符处的索引。

     string.indexOf(String str);-->返回子字符串第一处出现处的索引。

     string.indexOf(String str,int fromIndex);-->返回子字符串从指定位置开始第一次出现处的索引。

  8) string.isEmpty();-->当它length()0时返回true

  9) String.lastIndexOf();-->7类似,就是变成从最后一次出现的地方或者从指定地点反向搜索。

 10) string.length();-->返回字符串长度。

 11) string.matches(String regex);-->如果匹配给定的正则表达式则返回true

 12) string.replace(Char oldChar,char newChar);-->返回一个字符串,将字符串中的字符全部替换。

 13) string.split(String regex);-->根据给定的正则表达式的匹配拆分此字符串。

 14) string.toString();-->返回此对象本身。

 15) string.trim();-->返回省略空白和尾部空白的字符串副本。

 16) string.valueOf();-->

4.  StrigBuffer:可变字符串

     strbuff.append(123); -->字符串的拼接

     strbuff.append(123); -->字符串的拼接

     strbuff.toString(); -->增加大码可读性

     strbuff.length(); -->字符串长度

     strbuff.charAt(0); -->第一个字符

     strbuff.delete(2,4) -->包含2不包含4,改变的是他本身

     strbuff.substring(1,2); -->包括1不包括2

     strbuff.insert(2 ,a); -->在第二个位置插入a(也就是第三个)

     strbuff.replace(1,4,hello); -->替换,包括一不包括4

     strbuff.reverse(); -->反转,倒序输出

5. StringBuilder:可以理解为是一个轻量级的StringBuffer

    StringBuffer有的东西东西,StringBuilder都有,使用方式也一样。

    StringBuffer是线程安全的,因为要维护线程安全,所以相对于StringBuilder是重量级的。

    StringBuilder是线程不安全的。

    String是不可变字符串,StringBuffer是可变字符串。

    String一旦定义不可以修改(从存储上)StringBuffer可以通过多种方式修改字符串(insertdeletereplace);

    StringBuffer可以通过toString转变成string字符串

      应用场景

当需要频繁变更的字符串,如果只在单线程的情况下使用StringBuilder,多线程用StringBuffer(用的最多-->如果分不清就用StringBuffer-->保险一点)

一般情况下还是String字符串。