Math类
java.lang.Math提供了一系列静态方法用于科学计算;其方法的参数和返回值类型一般为double型。如果需要更加强大的数学运算能力,计算高等数学中的相关内容,可以使用apache commons下面的Math类库。
常用方法:
abs 绝对值
acos,asin,atan,cos,sin,tan
sqrt 平方根
pow(double a, double b) a的b次幂
max(double a, double b) 取大值
min(double a, double b) 取小值
ceil(double a) 大于a的最小整数
floor(double a) 小于a的最大整数
random() 返回 0.0 到 1.0 的随机数
long round(double a) double型的数据a转换为long型(四舍五入)
toDegrees(double angrad) 弧度->角度
toRadians(double angdeg) 角度->弧度
枚举
JDK5.0引入了枚举类型。枚举类型的定义包括枚举声明和枚举体。格式如下:
enum 枚举名 {
常量列表
}
枚举体就是放置一些常量。我们可以写出我们的第一个枚举类型:
enum Season {
SPRING,SUMMER, AUTUMN,WINDER
}
所有的枚举类型隐性地继承自 java.lang.Enum。(枚举实质上还是类!而每个被枚举的成员实质就是一个枚举类型的成员变量,他们默认都是public static final的。可以直接通过枚举类型名直接使用它们。)
老鸟建议
当你需要定义一组常量时,使用枚举类型。
尽量不要使用枚举的高级特性,事实上高级特性都可以使用普通类来实现,没有必要引入复杂性!
【示例1】枚举的使用
import java.util.Random;
public class FileTree {
public static void main(String[] args) {
//枚举遍历
for(Week k:Week.values()){
System.out.println(k);
}
//switch语句中使用枚举
int a = new Random().nextInt(4); //生成0,1,2,3的随机数
switch (Season.values()[a]) {
case SPRING:
System.out.println("春天");
break;
case SUMMER:
System.out.println("夏天");
break;
case AUTUMN:
System.out.println("秋天");
break;
case WINDTER:
System.out.println("冬天");
break;
}
}
}
enum Season{
SPRING,SUMMER,AUTUMN,WINDTER
}
enum Week {
星期一,星期二,星期三,星期四,星期五,星期六,星期日
}
「全栈Java笔记」是一部能帮大家从零到一成长为全栈Java工程师系列笔记。笔者江湖人称 Mr. G,10年Java研发经验,曾在神州数码、航天院某所研发中心从事软件设计及研发工作,从小白逐渐做到工程师、高级工程师、架构师。精通Java平台软件开发,精通JAVAEE,熟悉各种流行开发框架。
笔记包含从浅入深的六大部分:
A-Java入门阶段
B-数据库从入门到精通
C-手刃移动前端和Web前端
D-J2EE从了解到实战
E-Java高级框架精解
F-Linux和Hadoop