API(常用类2)

谁借莪1个温暖的怀抱¢ 2023-10-01 22:21 138阅读 0赞

1.String类

  • byte[] getBytes()
  • char[] toCharArray()
  • static String valueOf(char[] chs)
  • String toLowerCase()
  • String toUpperCase()
  • String concat(String str)
  • Stirng[] split(分割符);
  • String replace(char old,char new)
  • String replace(String old,String new)
  • replaceAll(String regex, String replacement)
  • replaceFirst(String regex, String replacement)
  • String trim()

    String a=”中国”;

    1. byte[] b=a.getBytes("utf-8");//将字符串转为Byte数组
    2. String c=new String();//将Byte数组转为字符串
    3. System.out.println(Arrays.toString(b));//数组需要Arrays.toString输出
    4. System.out.println(c);//非数组直接输出
    5. String a1="中国";
    6. char[] c1=a1.toCharArray();//将字符串直接输出为数组
    7. System.out.println(Arrays.toString(c1));

    int i=Integer.parseInt(“10”);// 将字符串转为基本类型

    1. Integer ii=new Integer("20");//将字符串转为包装类型
    2. String c= "null";
    3. String s=String.valueOf(c);
    4. //public static String valueOf(Object obj) {

    // return (obj == null) ? “null” : obj.toString();
    // 建议将其他类型转换为String时,使用valueOf()

    1. System.out.println(i);//10
    2. System.out.println(ii);//20
    3. System.out.println(s);//null
    4. String a=" abC1deab23fG ";
    5. System.out.println(a.toLowerCase(Locale.forLanguageTag(a)));//将所有字符转为小写
    6. System.out.println(a.toUpperCase(Locale.forLanguageTag(a)));//将所有字符转为大写
    7. String b="abc";
    8. String d=b.concat("efg");//连接字符串
    9. System.out.println(d);
    10. String a1="a,b,c,d";
    11. String[]a2=a1.split(",");//分割返回数组值
    12. System.out.println(Arrays.toString(a2));
    13. String a3=a.replace("ab","AA");//替换
    14. System.out.println(a3);
    15. String a4=a.replaceAll("ab","BB");//替换,正则表达式
    16. System.out.println(a4);
    17. String a5=a.replaceAll("\\d","");
    18. System.out.println(a5);
    19. int a6=a.trim().length();//去掉俩端的空格
    20. System.out.println(a.length());
    21. System.out.println(a6);

2.StringBuffer类

概述:我们如果对字符串进行拼接操作,每次拼接,都会构建一个新的String 对象,既耗时,又浪费空间。而StringBuffer就可以解决这个问题 线程安全的可变字符序列。

String、StringBuilder和Stringbuffer的区别:

  • StringBuffer是多线程操作且安全的方法有synchronized关键字修饰。
  • StringBuilder是单线程,安全性较高。
  • String值不可变,少量的拼接操作可以,大量的操作不建议。

相同点:底层实现完全一致,类的内部有一个char数组,没有final修饰,之后对象字符进行增减操作都是对底层数组的直接操作。

反转功能:

public StringBuffer reverse()

截取功能:

public String substring(int start)

public String substring(int start,int end)

添加功能:

public StringBuffer append(String str)

public StringBuffer insert(int offset,String str)

删除功能:

public StringBuffer deleteCharAt(int index)

public StringBuffer delete(int start,int end)

替换功能:

public StringBuffer replace(int start,int end,String str)

  1. // StringBuffer():可变带缓存区的字符串,如果需要大量的字符拼接,建议使用~;
  2. StringBuffer s=new StringBuffer("abcdefg");
  3. s.append("AA");//默认向末尾加
  4. s.append("BB");
  5. s.append("CC");
  6. s.append("DD");
  7. s.append("FF");
  8. s.insert(0,"P");//指定位置插入
  9. s.delete(0,4);//指定区间删除
  10. s.deleteCharAt(3);//指定位置删除
  11. s.replace(0,2,"zp");//指定区间替换
  12. s.reverse();//反转字符串
  13. String s2=s.substring(0,5);//截取一段区间并重新赋给一个新的对象
  14. StringBuilder s1=new StringBuilder("drtg");//底层方法与StringBuffer一样
  15. System.out.println(s);
  16. System.out.println(s2);

3.Math类:

  • abs 绝对值
  • sqrt 平方根
  • pow(double a, double b) a的b次幂
  • max(double a, double b)
  • min(double a, double b)
  • random() 返回 0.0 到 1.0 的随机数
  • long round(double a) double型的数据a转换为long型(四舍五入)

    System.out.println(Math.floor(9.1));

    1. System.out.println(Math.ceil(9.5));
    2. System.out.println(Math.round(4.4));
    3. System.out.println(Math.round(9.5));
    4. System.out.println(Math.random());
    5. Random random= new Random();
    6. System.out.println(random.nextBoolean());
    7. System.out.println(random.nextLong());
    8. System.out.println(random.nextInt());
    9. byte []bytes=new byte[5];
    10. random.nextBytes(bytes);//没有返回值
    11. System.out.println(Arrays.toString(bytes));

3.Random类:

  • random.nextLong() 返回随机数
  • random.nextBoolean() 随机返回true和false
  • random.nextint() 从0(包含)到指定数(不包含)
  • random.nextBytes()

    4.Date类:

    Date date=new Date();//创建一个日期对象,此对象包含程序陨星 那一刻的时间

    1. System.out.println(date.getTime());//自1970 1-1 0:0:0~到现在时间的毫秒
    2. //带删除线的方法,视为过期方法,api有新方法代替,可以使用
    3. System.out.println(date.getDate());
    4. System.out.println(date.getClass());
    5. System.out.println(date.getDay());
    6. System.out.println(date.getHours());
    7. System.out.println(date.getMinutes());
    8. System.out.println(date.getMonth());
    9. System.out. println(date.getSeconds());
    10. System.out.println(date.getYear());
    11. System.out.println(date.getTimezoneOffset());
    12. System.out.println(date);

5.Calendar

概括:Calendar类是一个抽象类,在实际使用时实现特定的子类的对象,创建 对象的过程对程序员来说是透明的,只需要使用getInstance方法创建 即可。

  1. //包含更丰富的日历信息
  2. Calendar calender=new GregorianCalendar();
  3. Calendar calendar1=new GregorianCalendar();
  4. System.out.println(calendar1.getTime());
  5. System.out.println(calendar1.get(Calendar.YEAR));
  6. System.out.println(calendar1.get(Calendar.PM));

6.SimpleDateFormat类

SimpleDateFormat 日期格式化类

● 构造方法

SimpleDateFormat(格式); // yyyy-MM-dd

● 日期转字符串

Date now=new Date();

myFmt.format(now);

● 字符串转日期

myFmt.parse(“2018-02-10”);

字符串日期格式与 指定格式必须一致

例如:String s = “2018-03-15”;

new SimpleDateFormat(“yyyy-MM-dd”);

  1. Date date=new Date();
  2. SimpleDateFormat a=new SimpleDateFormat("yyyy-MM-dd ");
  3. String c=a.format(date);//date类型转为字符串类型
  4. System.out.println(c);
  5. String b="2020-1-1";
  6. SimpleDateFormat d=new SimpleDateFormat("yyyy-MM-dd");
  7. System.out.println(b);
  8. try{
  9. Date date1=d.parse(b);//字符串转为date类型
  10. System.out.println(date1);
  11. }
  12. catch(ParseException e){
  13. e.printStackTrace();
  14. }

7.BigInteger类

在 Java 中,有许多数字处理的类,比如 Integer类,但是Integer类有一定的 局限性。

● 我们都知道 Integer 是 Int 的包装类,int 的最大值为 2^31-1。若希望描述 更大的整数数据时,使用Integer 数据类型就无法实现了,所以Java中提供了 BigInteger 类。

● BigInteger类型的数字范围较Integer,Long类型的数字范围要大得多,它支 持任意精度的整数,也就是说在运算中 BigInteger 类型可以准确地表示任何 大小的整数值而不会丢失任何信息。

8.BigDecimal类

● 在计算机中不论是float 还是double都是浮点数,而计算机是二进制的,浮点数会失去

一定的精确度。

● 根本原因是:十进制值通常没有完全相同的二进制表示形式;十进制数的二进制表示形式可

能不精确。只能无限接近于那个值.

double a = 1.0-0.9;

double b = 0.8-0.7;

System.out.println(a==b);

  1. System.out.println(11-10.9);//结果为0.0999999999964
  2. BigDecimal bigDecimal=new BigDecimal("11");
  3. BigDecimal bigDecimal1=new BigDecimal("10.9");
  4. System.out.println(bigDecimal.subtract(bigDecimal1));//结果为0.1

发表评论

表情:
评论列表 (有 0 条评论,138人围观)

还没有评论,来说两句吧...

相关阅读

    相关 API(Java)

    面向对象学完之后,我们开始学习了Java给我们提供的常用类API 所谓API就是Java系统中给我们提供的类和方法,防止我们重复造轮子 1.基本数据类型包装类 1.基

    相关 ObjectAPI

    第一章 Object类 1.1 概述 `java.lang.Object`类是Java语言中的根类,即所有类的父类。它中描述的所有方法子类都可以使用。在对象实例化的