4.2 常用数学函数
math类中的三角函数方法:
sin(radians) cos(radians) tan(radians) toRadians(degree) toDegree(radians)
asin(a) acos(a) atan(a)
指数函数方法:
exp(x):e的x次方
log(x) log10(x) pow(a,b) :计算a的b次方 sqrt(x):x的平方根
舍入方法:
ceil(x):向上舍入为最近的整数
floor(x):向下舍入为最近的整数
rint(x):舍入为最近的整数
round(x):略
min/max abs方法:
Math.min(...,....,...)
Math.max()
Math.abs(x)
random方法:
0.0 <= Math.random() < 1.0
(int)(Math.random() * 10) ----> 返回0~9之间的一个随机整数
50 + (int)(Math.random() * 50) ----> 返回50~99之间的一个随机整数
a + (int)(Math.random() * b) ----> 返回a~a + b -1之间的一个随机整数
4.3 字符数据类型和操作
char表示单个字符(2个字节)
字符型字面值用单引号括住(字符串必须在双引号内)
Unicode一开始被设计为16为的字符编码(包括ASCII码)
类型转换:
char型数据可以转换成任何一种数值类型,反之亦然。
整数转换成char类型时,只用到该数据的低16位,高位被忽略
浮点转换成char时,先转成int
如果另一操作数是数字或字符,那么char类型会自动转换成数字
如果另一操作数是字符串,那么字符与字符串相连
Character类中的方法
isDigit()
isLetter()
isLowerCase()
ToLowerCase()
System.out.println("isDigit('a') is " + Character.isDigit('a'));
System.out.println("isLetter('a') is " + Character.isLetter('a'));
System.out.println("isLowerCase('a') is " + Character.isLowerCase('a'));
System.out.println("isUpperCase('a') is " + Character.isUpperCase('a'));
String类型
String与System类和Scanner类一样,都是java库中一个预定义的类。String类型不是基本类型,而是引用类型(可用C中的指针类比)
方法 | 描述 |
---|---|
length() | 返回字符串中的字符数 |
charAt(index) | 返回字符串中指定位置的字符 |
concat(s1) | 将该字符串与字符串s1连接,返回一个新字符串 |
toUpperCase() | 返回所有字母为大写的新字符串 |
toLowerCase() | 返回所有字母为小写的新字符串 |
trim() | 返回去掉了两边空白字符的新字符串 |
这些方法只能通过一个特定的字符串实例来调用,称为实例方法。非实例方法称为静态方法(可以不使用对象来调用)。Math类中的所有方法都是静态方法。
调用实例方法:reference-Variable.methodName(arguments)
调用静态方法:ClassName.methodName(arguments)
"".length() 值为0
字符串中字符的下标index取值范围:0~s.length()-1
连接字符串:
使用concat方法 String s3 = s1.concat(s2);
+ 操作符可以将数字或字符和字符串连接起来
+= 也可用于字符串连接
从控制台读取字符、字符串:
调用Scanner对象上的next()方法
next()方法遇到空白字符('' '\t' '\n' '\f' '\r')停止读取
nextLine()读取一整行文本(按下回车键结束)
字符串比较:
方法 | 描述 |
---|---|
equals(s1) | 如果给该字符串等于字符串s1,则返回True |
equalsIgnoreCase(s1) | 如果给该字符串等于字符串s1,则返回True;不区分大小写 |
compareTo(s1) | 返回一个大于/等于/小于0的整数,分别表示该字符串是否大于/等于/小于 s1 |
compareToIgnoreCase(s1) | 和compareTo()一样,但不区分大小写 |
startsWith(prefix) | 若以特定前缀开始,返回True |
endsWith(suffix) | 若以特定后缀结束,返回True |
contains(s1) | 若s1为该字符串的子串,返回True |
查找字符串中的字符或子串:
indexOf(ch/s):返回字符串中出现的第一个ch/s的下标
.......................
字符串和数值间的转换:
转化为int值:int intValue = Integer.parseInt(IntString)
IntString是一个数值型字符串
转化为double值:double doubleValue = Double.parseDouble(
DoubleString)
DoubleString是一个数值型字符串
如果字符串不是数值型字符串,转换导致一个运行错误