增强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)
容易得多。