JDK1.5新特性之(增强for循环、可变参数、静态导入)

增强for循环

      增强for循环简化了一般for的书写,但增强for循环却不可以完全替代普通for循环,比如向控制台循环用星号打印出一个三角形,就必须用普通for循环,增强for循环再迭代集合数组时显示了它的简便,为了代码的简便课选用增强for循环。

增强for循环的书写格式如下:

for(type 变量名:集合变量名){...}

可变参数

       在JDK1.5之前不确定方法的参数个数,是使用的是数组作为参数进行传递或者是方法进行重载,每次还要定义一个数组十分的不方便,要是重载那就更不方便,那该写多少个。可变参数的出现解决了这些繁重的工作,使得编写代码更加的简便。

可变参数的书写格式如下:

权限修饰词   返回类型   方法名(参数类型 参数名 ...){方法体}

注意:

①    那三个点点只能出现在参数列表的最后;
②    只能出现在参数和变量名之间,前后有无空格都可以;
    调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,
④    在方法体中以数组的形式访问可变参数。

增强for循环和可变参数代码如下:

class Demo
{
	public static int add(int x,int ... args){
		int sum = x;
		for(int arg : args){
			sum+=arg;
		}
		return sum;
	}
	public static void main(String[] args) 
	{
               System.out.println(add(4,5,6,7,8));//30
	}
}
静态导入

import语句不仅可以导入类,还增加了导入静态方法和静态域的功能。

静态导入的格式:

import static 静态方法的包名

例如:如果在源文件的顶部,添加一条指令:

import static java.lang.System.*;

就是可以使用System类的静态方法和静态域,而不必加类名前缀。

out.println("Goodbye,world!");

exit(0);

另外,还可以导入特定的方法或域:

import static java.lang.System.out;

     实际上,是否有更多的程序员采用System.out或System.exit的简写形式,是一件值得怀疑的事情。这种编写形式不利于代码的清晰度。不过,静态导入有两个实际的应用更合人心意。

算术函数:如果对Math类使用静态导入,就可以采用更加自然的方式使用算术函数。

例如:

sqrt(pow(x,2)+pow(y,2))

看起来比

Math.sqrt(Math.pow(x,2)+Math.pow(y,2))

清晰得多。

笨重的常量:如果需要使用大量带有冗长名字的常量,就应该使用静态导入。例如:

if(d.get(DAY_OF_WEEK)==MONDAY)

看起来比

if(d.get(Calendar.DAY_OF_WEEK)==Calendar.MONDAY)

容易得多。

你可能感兴趣的:(java基础笔记与理解)