【文章标题】JDK5.0新特性(1)
【文章作者】曾健生
【作者邮箱】zengjiansheng1@126.com
【作者QQ】190678908
【作者博客】http://blog.csdn.net/newjueqi
http://newjueqi.iteye.com/
【作者声明】欢迎转载文章,但转载请保留文章的完整性以及注明文章的出处。
*******************************************************************************
从JDK5.0后,Sun在java新增一些特性来简化开发,本文主要介绍以下的几个特性:
l 静态导入
l 自动装包/拆包
l for-each循环
l 可变参数
(1)静态导入
说真的,本人认为如果用这个新特性写的代码可读性非常差(不知道方法或属性从哪冒出来的),所以也就简单说一下(而且这一特性也很简单)。
静态导入使用import static 语句导入一个类的全部静态方法和静态属性。
假如想使用java.lang.Math类中的静态属性PI,可用以下语句:
package newjueqi.net.csdn.test;
import static java.lang.Math.*;
public class TestStatic {
public static void main(String[] args) {
//使用Math类中的PI值
System.out.println( PI );
}
}
/****
输出:3.141592653589793
******/
(2)自动装包/拆包
我们知道,在Java的核心是“一切皆对象”,就连 Java中的八种基本数据类型也不例外,分别对应了八种类,所以这八种基本数据和它们对应的类天生就有着不可分割的联系,但在JDK1.4中,要把一种基本数据类型变成相对应的要通过很传统的方法如下:
Integer i=new Integer( 4 );
但有了自动装包/拆包后,就能执行以下的语句:
Integer inte=4;
int i=inte;
是不是省事多了,能把整数类型直接装包成一个整数类,也可以把一个整数类拆包为一个整数类型。
(3)for-each循环
for-each循环在遍历数组和集合时,不需要知道数组或集合的长度,也无须知道索引,for-each能自动遍历数组或集合中的每个元素。
标准的格式如下:
For(Type varname:Array|Collection )
{
Varname;//获取每个数组或集合中每个元素的值
}
例子程序如下:
package newjueqi.net.csdn.test;
/**
*测试foreach循环
*/
public class TestForEach {
public static void main(String[] args) {
int arr[]={1,2,3,4,5};
//通过foreach循环遍历获取数组arr的值
for( int iterator: arr)
{
System.out.println( iterator );
}
}
}
/**********************
输出:
1
2
3
4
5
******************/
(4)可变参数
JDK5.0后java终于可以定义形式参数长度可变的参数。
格式为:
method( typename…args )
使用可变参数需要注意两点:
1. 如果函数中传入的参数中有可变参数和固定参数,可变参数必须要处于行参列表的最后。
2. 调用一个包含可变参数的方法时,传入的可以是多个参数或一个数组。
一个例子程序如下:
package newjueqi.net.csdn.test;
/**
*测试可变参数的程序
*/
public class TestChangeVar {
public static void main(String[] args) {
showString( "a", "b","c","d","e");
}
//把传入的所有字符输出
public static void showString( String...args )
{
for( String str:args )
{
System.out.print( str+" " );
}
}
}
/***
输出结果:a b c d e
***/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)