4.2 常用数学函数
Math类中方法分为三类:三角函数、指数函数方法和服务方法。服务方法包括取整、求最小值、求最大值、求绝对值和随机方法。除了这些方法之外,Math类还提供了两个很有用的double型常量,PI(π)和E(自然对数的底数)。可以在任意程序中用Math.PI和Math.E的形式使用这两个变量.
4.2.1 三角函数方法
sin(radians) | 返回以弧度位单位的角度的三角正弦函数值 |
cos(radians) | 返回以弧度为单位的角度的三角余弦函数值 |
tan(randians) | 返回以弧度为单位的角度的三角正切函数值 |
toRadians(degree) | 将以度位单位的角度值转换为以弧度表示 |
toDegrees(radians) | 将以弧度为单位的角度值转换为以度表示 |
asin(a) | 返回以弧度为单位的角度的反三角正弦函数值 |
acos(a) | 返回以弧度为单位的角度的反三角函数余弦函数值 |
atan(a) | 返回以弧度为单位的角度的反三角函数正切函数值 |
asin和atan的返回值是-π/2~π/2的一个弧度值,acos的返回值在0到π之间。
4.2.2 指数函数方法
exp(x) | 返回e的x次方 |
log(x) | 返回x的自然底数 |
log10(x) | 返回x的以10为底的对数 |
pow(a,b) | 返回a的b次方 |
sqrt(x) | 对于x>=0的数字,返回x的平方根 |
4.2.3 取整方法
ceil(x) | x向上取整为它最接近的整数。该整数作为一个双精度值返回 |
floor(x) | x向下取整为它最接近的整数。该整数作为一个双精度值返回 |
rint(x) | x取整为它最接近的整数。如果x与两个整数的距离相等,偶数的整数作为一个双精度值返回 |
round(x) | 如果x是单精度数,返回(int)Math.floor(x+0.5);如果x是双精度数,返回(long)Math.floor(x+0.5) |
4.2.4 min、max和abs方法
min和max方法用于返回两个数(int、long、float或double型)的最小值和最大值。
abs方法以返回一个数(int、long、float或double型)的绝对值
4.2.5 random方法
random(),生成大于等于0.0且小于1.0的double型随机数(0.0<= Math.random() <1.0)。
0 ~ 9之间的一个随机数 (int)(Math.random() * 10 )
50 ~ 99之间的一个随机数 50 + (int)(Math.random()* 50 )
通常 ,
a + Math.random( ) * b 返回一个a ~ a + b 之间的一个随机数不包括a+b
4.3字符数据类型和操作
4.3.4 字符的比较和测试
Character类中的方法
方法 | 描述 |
isDigit(ch) | 如果指定的字符是一个数字,返回true |
isLetter(ch) | 如果指定的字符是一个字母,返回true |
isLetterOrDigit(ch) | 如果指定的字符是一个字母或者数字,返回true |
isLowerCase(ch) | 如果指定的字符是一个小写字母,返回true |
isUpperCase(ch) | 如果指定的字符是一个大写字母,返回true |
toLowerCase(ch) | 返回指定的字符的小写形式 |
toUpperCase(ch) | 返回指定的字符的大写形式 |
4.4 String类型
String message = "Welcome to Java";
String 实际上与System类和Scanner类一样,都是Java库中一个预计定义的类。String类型不是基本类型,而是引用类型。任何Java类都可以将变量表示为引用类型。使用引用类型声明的变量成为引用变量,它引用一个对象。这里,message是一个引用变量,它引用一个内容为Welcom to Java的字符串对象。
String 对象的简单方法
方法 | 描述 |
length() | 返回字符串中的字符数 |
charAt(index) | 返回字符串s中指定位置的字符 |
concat(s1) | 将本字符串和字符串s1连接,返回一个新字符串 |
toUpperCase() | 返回一个新字符串,其中所有的字母大写 |
toLowerCase() | 返回一个新字符串,其中的所有的字母小写 |
trim() | 返回一个新字符串,去掉了两边的空白字符 |
例:
String message = "Welcome to Java";
System.println("The length of " + message + " is " + message.length());
显示
The length of Welcome to Java is 15
4.4.3 连接字符串
- String s3 = s1.concat(s2);
- String s3 = s1 + s2;
- 加号(+)也可以用于连接数字和字符串。在这种情况下,先将数字转换成字符串,然后再进行连接。注意,若要用加号实现连接功能,至少要有一个操作数必须为字符串。如果操作数之一不是字符串(比如,一个数字),非字符串值转换为字符串,并与另外一个字符串连接。
- 增强的+=操作符也可以用于字符串连接。
4.4.5 从控制台读取字符串
为了控制台读取字符串,调用Scanner对象上的next()方法。
Scanner input = new Scanner(System.in);
String s1 = input.next();
next()方法读取以空白字符结束的字符串(即''、'\t'、'\f'、'\r'或'\n')。可以使用nextLine()方法读取一整行文本。nextLine()方法读取以按下回车键为结束标志的字符串。
4.4.6 从控制台读取字符
为了从控制台读取字符,调用nextLine()方法读取一个字符串,然后在字符串上调用charAt(0)来返回一个字符。
4.4.7 字符串比较
String对象的比较方法
方法 | 描述 |
equals(s1) | 如果该字符串等于字符串s1,返回true |
equlsIgnoreCase(s1) | 如果该字符串等于字符串s1,返回true;不区分大小写 |
compareTo(s1) | 返回一个大于0、等于0、小于0的整数,表名一个字符串是否大于、等于或者小于s1 |
compareToIgnoreCase(s1) | 不区分大小写的比较 |
startsWith(prefix) | 如果字符串以特定的前缀开始,返回true |
endsWith(suffix) | 如果字符串以特定的后缀开始,返回true |
contains(s1) | 如果s1是该字符串的子字符串,返回true |
4.4.8 获得子字符串
String类包含的获取子串的方法
方法 | 描述 |
substring(beginIndex) | 返回该字符串的子串,从特定位置beginIndex的字符开始到字符串的结尾 |
substring(beginIndex,endIndex) | 返回该字符串的子串,从特定位置beginIndex的字符开始到下标为endIndex-1的字符。位于endIndex的字符不属于该字符串的一部分 |
4.4.9 获取字符串的字符或者子串
String类包含获取子串的方法
方法 | 描述 |
indexOf(ch) | 返回字符串中出现的第一个ch的下标。 |
indexOf(ch,fromIndex) | 返回字符串中fromIndex之后出现的第一个ch的下表。 |
indexOf(s) | 返回字符串中出现的字符串s的下表。 |
indexOf(s,fromIndex) | 返回字符串中fromIndex之后出现的第一个字符串s的下标。 |
lastIndexOf(ch) | 返回字符串中出现的最后一个ch的下标。 |
lastIndexOf(ch,fromIndex) | 返回字符串中fromIndex之前出现的最后一个ch的下标。 |
lastIndexOf(s) | 返回字符串中出现的最后一个字符串s的下标。 |
lastIndexOf(s,fromIndex) | 返回字符串中fromIndex之前出现的最后一个字符串s的下标。 |
注意:如果没有匹配到都会返回-1
4.4.10 字符串和数字间的转换
int intValue = Integer.parseInt(intString); double doubleValue = Double.parseDouble(doubleString);
2018/4/1