java基础知识四 math类 字符 字符串 控制台输入输出 StringBuilder与StringBuffer

时间:2024-03-06 16:18:32

第四章:数学函数、字符和字符串

math类

Math是final类:在java.lang.Math中,所有数学函数都是静态方法

在一个java程序中,java.lang包中的所有类是隐式导入的。

  • 三角函数方法

『此处需要插入图』

  • 指数函数方法

『此处需要插入图』

  • 取整方法

『此处需要插入图』

  • min、max、abs方法

 max(double x,double y):传回x、y较大数 
  min(double x,double y):传回x、y较小数

下面是正确的: Math.max(2.5,3) 。返回3.0。

abs方法返回绝对值

  • random方法

Math.random方法生成[0.0,1.0)之间的double类型的随机数

 a+(int)(Math.random( )*b)                        返回[a, a+b)
 a+(int)(Math.random( )*(b+1))             返回[a, a+b]

 

字符

java内字符采用unicode码。一个字符两个字节,用\u开头的四位十六进制数表示。从 \'\u0000\'到\'\u007f\'对应128个ascii码。

character类的方法如下图:

『此处需要插入图』

 

 

 

类型转换和整形直接量类型转换类似,如下:

        byte b = \'a\';//正确
        int i = \'a\';//正确
        b = \'\ufff4\';//错误
        b = (byte)\'\ufff4\';//正确

字符串

String类:是一个final类。表示一个固定长度的字符序列,实例化后字符不能改

  • string对象的简单方法

『此处需要插入图』

  • string对象的比较方法

『此处需要插入图』

注意:操作符==只能检查来个srting变量是否指向同一对象;equal方法判断两个string变量的内容是否相同。

  • string类包含获取子串的方法

『此处需要插入图』

 

  • 字符串和数字间的转换

valueOf方法将基本数据类型转换为字符串。例如
    String s1 = String.valueOf(1.0);  //“1.0”
    String s2 = String.valueOf(true); //“true”
字符串转换为基本类型
    Double.parseDouble(str)
    Integer.parseInt(str)
    Boolean.parseBoolean(str)

  • 格式化控制台输出

格式化字符串: % [-+ 0,][width][.precision]格式描述符
String.format(format, item1, item2, …);  //+及空格标志用于显示正负号
格式描述符:宽度不够时不会截断
%b 布尔值
%c 字符
%d 十进制整数
%f 浮点数,包括double类型
%e , %E科学计数法
%s 字符串
String.format(“格式$:%1d,%2s”, 99,“abc”); //结果”格式$:99,abc“

  • 控制台输入

Scanner类(java.util.Scanner)
Scanner scanner = new Scanner(System.in);
//构造函数Scanner的参数类型也可为java.io.File
double d = scanner.nextDouble( );
方法:
    nextByte( )、nextShort( )、nextInt( )
    nextLong( )、nextFloat( )、nextDouble( )
    next( ) 、nextLine( )

next( )方法读取以空白字符(\' \'、\'\t\'、\'\f\'、\'\r\'、\'\n\')结束的字符串

nextLine( )方法读取一行字符串,以回车键为结束标志。

读取单个字符,需要先读取字符串,然后再获取字符串的第一个字符。

  • StringBuilder与StringBuffer

StringBuilder与StringBuffer(final类)初始化后还可以修改字符串。
StringBuffer修改缓冲区的方法是同步的,更适合多任务环境。
StringBuilder在单任务模式下与StringBuffer工作机制类似。

方法如下:

『此处需要插入图』