Java几个常见内置类总结

一、Math类

Math类即数学类,Java提供用来处理和计算复杂数学运算的类,Math

Math类常见的几种方法

  • PI //圆周率,属性
  • E //自然常数,属性
    System.out.println("E 常量的值:" + Math.E);
    System.out.println("PI 常量的值:" + Math.PI);
  • abs(num) //返回num值的绝对值
  • max(num) //求最大值
  • min(num) //求最小值
public class Test01 {
    public static void main(String[] args) {
        System.out.println("10 和 20 的较大值:" + Math.max(10, 20));
        System.out.println("15.6 和 15 的较小值:" + Math.min(15.6, 15));
        System.out.println("-12 的绝对值:" + Math.abs(-12));
    }
}

运行结果:
10和20的较大值:20
15.6和15的较小值:15.0
-12的绝对值:12

  • cbrt(num) //开立方根
  • ceil(num) //向上取整
  • floor(num) //向下取整
  • pow(num1,num2) //a^b幂次方
  • sqrt(num) //a的平方根
  • random() //获取一个[0,1)的随机小数
 import java.util.Scanner;
  public class Test03 {
     public static void main(String[] args) {
            Scanner input = new Scanner(System.in);
            System.outprintln("请输入一个数字:");
            double num = input.nextDouble();
            System.out.println("大于或等于 "+ num +" 的最小整数:" + Math.ceil(num));
            System.out.println("小于或等于 "+ num +" 的最大整数:" + Math.floor(num));
            System.out.println("4 的立方值:" + Math.pow(4, 3));
            System.out.println("16 的平方根:" + Math.sqrt(16));
        }
    }

运行结果:

请输入一个数字:
99.01
大于或等于 99.01 的最小整数:100.0
小于或等于 99.01 的最大整数:99.0
4的立方值:64.0
16的平方根:4.0

二、Random类
随机数:

  • 计算机中的随机数都是伪随机数

Math.random() //获取一个[0,1)的随机小数
java.util.Random 包
Random r = new Random([long seed]);
r.nextInt();
r.nextDouble();
r.nextFloat();

import java.util.Random;

public class Test14_random {
    public static void main(String[] args) {
       Random r = new Random();
       double d1 = r.nextDouble();  //生成[0,1.0]的小数
       double d2 = r.nextDouble()*7; //生成[0,7.0]的小数
       int i1 = r.nextInt(10);  //生成[0,10]的整数
       int i2 = r.nextInt(3) - 2;  //生成[-3,15]的整数
       long l1 = r.nextLong();  //生成一个随机长整型值
       boolean b1 = r.nextBoolean();  //生成一个随机布尔型值
       float f1 = r.nextFloat();  //生成一个随机浮点型值
        System.out.println("d1="+d1);
        System.out.println("d2="+d2);
        System.out.println("i1="+i1);
        System.out.println("i2="+i2);
        System.out.println("生成一个随机长整型数为"+l1);
        System.out.println("生成一个随机布尔类型值为"+b1);
        System.out.println("生成一个随机浮点数值为"+f1);
        System.out.println("下期开奖号码为:");
        for(int i = 1; i <= 5; i++){
            int num = r.nextInt(10);  //生成[0,9]的整数
            System.out.println("num="+num);
        }
}
}


/**
* 运行结果
* d1=0.6314770238982214
*d2=0.4604462094788495
*i1=1
*i2=-2
*生成一个随机长整型数为2844467010302913629
*生成一个随机布尔类型值为false
*生成一个随机浮点数值为0.7984209
*下期开奖号码为:
*num=3
*num=0
*num=6
*num=2
*num=3
/

三、Scanner类
Scanner是标准输入流,IO流

next() //通过空格获取字符

  • nextInt()
  • nextDouble()

import java.util.Scanner; 
 
public class ScannerDemo {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        // 从键盘接收数据
 			// next方式接收字符串
        System.out.println("next方式接收:");
        // 判断是否还有输入
        if (scan.hasNext()) {
            String str1 = scan.next();
            System.out.println("输入的数据为:" + str1);
        }
        scan.close();
    }
}


运行结果: $ javac ScannerDemo.java
$ java ScannerDemo
nextLine方式接收:
runoob com
输入的数据为:runoob com

next() 与 nextLine() 区别

next():

1、一定要读取到有效字符后才可以结束输入。
2、对输入有效字符之前遇到的空白,next() 方法会自动将其去掉。
3、只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
next() 不能得到带有空格的字符串。

nextLine():

1、以Enter为结束符,也就是说 nextLine()方法返回的是输入回车之前的所有字符。
2、可以获得空白。
	如果要输入 int 或 float 类型的数据,在 Scanner 类中也有支持,但是在输入之前最好先使用 hasNextXxx() 方法进行验证,再使用 nextXxx() 来读取:

import java.util.Scanner;
 
public class ScannerDemo {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        // 从键盘接收数据
        int i = 0;
        float f = 0.0f;
        System.out.print("输入整数:");
        if (scan.hasNextInt()) {
            // 判断输入的是否是整数
            i = scan.nextInt();
            // 接收整数
            System.out.println("整数数据:" + i);
        } else {
            // 输入错误的信息
            System.out.println("输入的不是整数!");
        }
        System.out.print("输入小数:");
        if (scan.hasNextFloat()) {
            // 判断输入的是否是小数
            f = scan.nextFloat();
            // 接收小数
            System.out.println("小数数据:" + f);
        } else {
            // 输入错误的信息
            System.out.println("输入的不是小数!");
        }
        scan.close();
    }
}

运行结果:
$ javac ScannerDemo.java
$ java ScannerDemo
输入整数:12 整数数据:12
输入小数:1.2 小数数据:1.2

四、字符串对象(String)

java.lang.String

字符串:字符连在了一起,形成了字符串。人的肉眼可以识别分符号
在Java中,一般表现为"",引号的内部内容就是字符串
在java中,字符串是引用数据类型(对象)

定义字符串:

  • 第一种: String s = “this is a book!”; //定义了一个字符串
  • 第二种:new String() //获取字符串
  • String ss = new String(); // 等价于 String ss = “”;
  • String sss = new String(“啦啦啦啦啦”); // 等价于 String sss = “啦啦啦啦啦”;

字符串是一个常量,是一种不可变的数据类型

常见的字符串方法:
|-- charAt(i) // 获取下标对应的字符
|-- length() // 返回字符串的长度
|-- codePointAt(i) // 获取下标对应的字符的Unicode值
|-- concat(str) // 拼接字符串
|-- contains(str) // 判断是否包含指定的字符系列。
|-- static copyValueOf(char[]) //返回指定数组中表示该字符序列的 String。
|-- endsWith(suffix) //测试此字符串是否以指定的后缀结束。
|-- startsWith(prefix) //测试此字符串是否以指定的前缀开始。
|-- equals(str) //将此字符串与指定的对象比较。
|-- equalsIgnoreCase(str) //将此 String 与另一个 String 比较,不考虑大小写。
|-- getByte() // 使用平台的默认字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中。
|-- indexOf(str) //返回指定子字符串在此字符串中第一次出现处的索引。
|-- lastIndexOf(str) //返回指定子字符串在此字符串中最右边出现处的索引。
|-- isEmpty() //判断字符串是否为空
|-- replace(oldstr, newstr)//返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 得到的
|-- split(regex) //根据匹配给定的正则表达式来拆分此字符串。
|-- substring(index) //返回一个新的字符串,它是此字符串的一个子字符串。
|-- substring(start, end) //返回一个新字符串,它是此字符串的一个子字符串。
|-- toCharArray() //将此字符串转换为一个新的字符数组。
|-- toLowerCase() //使用默认语言环境的规则将此 String 中的所有字符都转换为小写。
|-- toUpperCase() //使用默认语言环境的规则将此 String 中的所有字符都转换为大写。
|-- trim() //返回字符串的副本,忽略前导空白和尾部空白。

注意:

字符串不要使用等于符号判断是否相等
在java中 == 判断的值的,不能用来判断字符串
因为字符串的创建方式有多种,不同的创建方式,地址(指针)可能不一样

基本数据类型都是可以使用 == 判断是否相等
字符串不能还是用 == 判断是否相等
字符串中 == 判断的字符串的地址
equals判断是字符串的值;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

simpleHan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值