java语法糖(一)
java中的for-each
1、java的for-each循环是在jdk5开始引入的
2、其特点如下:
- 语法更为简洁
- 避免了索引越界异常
- 无法对元素进行更新和删除,无法进行更新是指元素的指针无法更改,并不是指元素的成员变量值无法更改
java中的枚举
- 用关键字enum来声明枚举类,声明的枚举类是Enum的子类,只不过声明的时候不需要显式的用extends去继承Enum
- 枚举类其实是一组有限值的集合,例如取值周一到周日,枚举类中有几个值,它就有几个实例变量,枚举可以起到限制取值范围的作用,同时减少了不断新建实例,销毁实例的开销
- 枚举类取其中的值的时候,都是打点调用,不能用new创建,例如
enum Size {
SMALL,MEDIUM,LARGE,EXTRA_LARGE;
}
Size small = Size.SMALL;
java中的可变参数
- 其形式表现为类型后面加三个点,例如 String... args,它本质上是一个不定长的数组
- 一个函数上只能有一个不定长参数,且只能排在固定参数之后
- 当出现方法重载时,固定参数调用的优先级要比不定长参数高,例如void print(String s)调用时优先级要高于void print(String... s)
好处:在方法的构建上变的更灵活
java中的静态导入
- 通过import static导入一个类的静态方法或者静态变量
- 当导入的静态方法有重名时,仍需以类名点方法名的方式调用
好处:更精准的导入,语法变的更简洁,同时减少类在编译时的资源开销