分享

JDK1.5新特性示例- 有鱼则灵 - 新浪BLOG

 春雨 2007-01-04
JDK1.5新特性示例
2007-01-04 14:49:50
“JDK1.5”的一个重要主题就是通过新增一些特性来简化开发,这些特性包括泛型,for-each 循环,自动装包/拆包,枚举,可变参数, 静态导入。使用这些特性有助于我们编写更加清晰,精悍,安全的代码。写了几个简单的例子来帮助理解这些新特性:
(1)-----------------------------------------------
import java.util.ArrayList;
import java.util.Collection;
/**
 * 自动装包/拆包(Autoboxing/unboxing)
 * @author yulj
 *
 */
public class BoxingTest {
 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  int a = 3;
  Collection c = new ArrayList();
  c.add(a);//自动转换成Integer.
  Integer b = new Integer(2);
  c.add(b + 2);
  //这里Integer先自动转换为int进行加法运算,然后int再次转换为Integer.
 }
}
(2)-----------------------------------------------
/**
 * 枚举(Enums)
 * @author yulj
 *
 */
public class EnumTest {
 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  Color c=Color.Red;
  System.out.println(c.ordinal());
  System.out.println(c.name());
  System.out.println(c.getDeclaringClass().getName());
  for (Color c1 : Color.values())
   System.out.println(c1);
 }
}
 enum Color
{
Red,
White,
Blue
}
(3)-----------------------------------------------
import java.util.ArrayList;
import java.util.Collection;
/**
 * For-Each循环
 * @author yulj
 *
 */
public class ForEachTest {
 /**
  * @param args
  */
 public static void main(String[] args) {
  Collection<String> c = new ArrayList<String>();
  c.add("aa");
  c.add("bb");
  c.add("cc");
  for(String str:c)
   System.out.println(str.toString());
 }
}
(4)-----------------------------------------------
import java.util.ArrayList;
import java.util.Collection;
/**
 * 泛型
 * @author yulj
 *
 */
public class GenericTest {
 public static void main(String args[]) {
  Collection<String> c = new ArrayList<String>();
  c.add("aa");
 }
}
(5)-----------------------------------------------
/**
 * 可变参数(Varargs)
 * @author yulj
 *
 */
public class VarargsTest {
 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
  VarargsTest vt = new VarargsTest();
  String a1="a1";
  int a2=1;
  vt.write(a1,a2);
 }
 public void write(Object... objs) {
  for (Object obj: objs)
  System.out.println(obj);
  }
}

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多