浅析 java5 新特性(5)
来源:互联网 发布:e宠商城淘宝店 编辑:程序博客网 时间:2024/05/29 16:10
首先, Java 的根基 JDK已经跨越到了 J2SE 1.5,或者称为 J2SE 5.0,不过,我更喜欢称它为1.5,延续性是我们应用程序员更关心的,当然革命性是那些新技术发明者更陶醉的,所以他们曾经取名 J2SE 2.0,现在,为了表示这种跨越,而且跨越是非常巨大,一下子达到了 J2SE5.0,非常夸张,不过老外在技术上确实经常极端,"偏执者才能生存"我想是其行动主义文化的主要基础。J2SE1.5 最吸引眼球的我认为主要是 annotate 特性,该特性可以大大降低程序员的编程量,它和 Java Relfect 机制结合,可以编制出相当灵活的软件系统或框架。从 J2SE1.5 看出,SUN正在试图简化 Java,但是也许这一简化动作来得迟了点。
一下 简单总结一下 java5 的一些新特性:
1、可变参数:在调用一个方法时,必须根据方法的定义传递参数,但是在java5 之后产生了一种新的概念---可变参数,即,方法中可以接受的参数吧u,二是随着需要而传递的。
格式:返回值类型 方法名称(类型 参数名称,类型 ...参数名称){}
注意:“类型...参数名称”必须放在最后面;
前面的“类型 参数名称”可有可无;
“类型...参数名称”之间是三个点号;
向方法中传递可变参数之后,其中的参数是以数组的形式保存起来的。
代码:
package com.zsc.everyday;//可变参数示例public class NewTest {public static void main(String[] args) {System.out.println("不传参数fun():");fun();System.out.println("传递一个参数 fun(1):");fun(1);System.out.println("传递五个参数 fun(1,2,5,6,9):"); fun(1,2,5,6,9);}private static void fun(int...arg) {for(int i=0;i<arg.length;i++){System.out.println(arg[i]);}}}运行结果:
不传参数fun():传递一个参数 fun(1):1传递五个参数 fun(1,2,5,6,9):12569注意:在使用可变参数的时候,也可以直接向方法中传递一个数组
int temp[] = {1,2,5,6,9};fun(temp);或者写成:
fun(new int[]{1,4,2,5,8});
2、 foreach 输出:之前 数组的输出都会使用 for 循环输出,但是在 jdk1.5 之后提供了一种更为简洁的输出方式 foeeach 称为增强 for循环。
格式:for(数据类型 变量名称:数组名称){...}
代码:
package com.zsc.everyday;public class ForTest {public static void main(String[] args) {System.out.println("不传参数fun():");fun();System.out.println("传递一个参数 fun(1):");fun(1);System.out.println("传递五个参数 fun(1,2,5,6,9):");fun(1,2,5,6,9);}private static void fun(int...arg) {for(int x:arg){System.out.println(x);}}}
运行结果:
不传参数fun():传递一个参数 fun(1):1传递五个参数 fun(1,2,5,6,9):12569
3、装箱与拆箱:
八种基本数据类型:int 、char、short、boolean、long、float、double、byte。
八种对应包装类:Integer、 Character、 Short 、Boolean 、Long 、Float、 Double 、Byte。
装箱:讲一个基本数据类型转变为包装类。
拆箱:讲一个包装类转变为基本数据类型。
之前操作:
package com.zsc.everyday;public class OldWrapper {public static void main(String[] args) {int x = 30 ;//装箱:讲一个基本数据类型转变为包装类。Integer i = new Integer(x);//拆箱:讲一个包装类转变为基本数据类型。int temp = i.intValue();}}自动装箱与自动拆箱:
package com.zsc.everyday;public class OldWrapper {public static void main(String[] args) {Integer m = 30 ;int n = m ;Float f = 30.5f ;float ff = f ;}}
4、静态导入:如果一个类中的方法全部是static 声明的静态方法,则在导入时就可以直接使用 import static 的方式导入。
格式:import static 包.类.*;
在java中 Math 类就是一个这样的类。
代码:
package com.zsc.everyday;import static java.lang.Math.*;public class MathTest {public static void main(String[] args) {System.out.println(Math.abs(3-6));System.out.println(Math.max(3, 9));}}运行结果:
39
- 浅析 java5 新特性(5)
- Java5新特性(二)
- Java5 新特性
- JAVA5新特性
- 《Java5.0新特性》
- JAVA5.0新特性
- java5的新特性
- java5新特性
- Java5.0新特性
- JAVA5 新特性
- Java5 java6 新特性
- 【转载】JAVA5新特性
- JAVA5新特性
- java5,java6新特性
- Java5.0新特性
- java5新特性
- java5 多线程新特性
- Java5.0新特性
- PHP统计中英文字符个数的函数
- java多线程基本方法(3)
- PHP获取当前文件路径,上层目录路径
- java 输入/输出 IO流(4)
- 谈密码的管理方法
- 浅析 java5 新特性(5)
- java 新 IO(6)
- java 新特性 ----枚举(7)
- java 新特性 ----Annontation (8)
- checkGuard class
- 交通灯管理系统(9)
- 银行业务调度系统(10)
- asp判断字符串包含的函数——InStr函数
- Mac系统关于文件夹显示