Java高级特性

最近看了张孝祥老师的《java高级特性》,这些特性大多是从java5开始添加的内容,在应用中,有很大的用处。既然看过了,就总结下。
1.静态导入:在使用类的静态方法时,不写一大串的包名、类名,而直接使用方法名调用方法:

1
2
3
4
5
6
7
8
import static java.lang.Math.max;
import static java.lang.Math.abs;
public class StaticImport {
	public static void main(String[] args) {
		System.out.println(max(3, 7));
		System.out.println(abs(3 - 6));
	}
}

在导入类的时候添加关键字static,静态导入max、abs方法,使用的时候,不用再写方法的类名。

2.可变参数:方法的参数个数是不固定的,可变的。前提条件是可变参数属于同一类型,在处理可变参数的时候,会当作数组来处理

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class VarableParameter {
	public static void main(String[] args) {
		System.out.println(add(2,3,4,5));;
		System.out.println(add(1,2,3,4,5,6,7));
	}
	//...为三个点号
	static int add(int x,int ... args) {
		int sum=x;
		for (int i=0;i<args.length;i++) {
			sum+=args[i];
		}
		for(int arg:args) {
			sum+=arg;
		}
		return sum;
	}
}

3.for循环新写法:

1
2
3
for(int arg:args) {
			sum+=arg;
		}

演示代码就是上例中的一段。

4.自动拆箱与自动装箱
基本数据类型与对应的对象型类型可以自动转换

1
2
		Integer iObj=3;
		System.out.println(iObj+12);

未完待续

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">

Go back to top