`
lisanping
  • 浏览: 145275 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JAVA1.5新特性

    博客分类:
  • JAVA
阅读更多
今天看代码发现有很多看不懂的写法,问下张海才知道是JAVA1.5的新特性,于是上网找了下,了解到1.5的新特性:

1.泛型.   新引进的重头,有点像C++的模板.
泛型是方便对集合的操作,省去复杂的类型转换.
import java.util.*;
  
  ArrayList<string></string> animals = new ArrayList<string></string>();
  animals.add("Dog");
  animals.add("Cat");
  animals.add("Chick");
  animals.add("Cow");
  for(String option : animals) {
  System.out.println(option);
  }

2.自动拆箱和装箱
也是为了省去复杂的类型转换,还有引进了像printf的匹配
Integer i = 10;
  int j = i;

int x = 10;
  int y = 20;
  int sum = x + y;
  System.out.printf("%d + %d = %d",x,y,sum);

3.for循环  对应C#的foreach
相当于域的概念.
String[] names = {"BadBoy","GoodBoy","HappyGirl","sadGirl"};
  for(String option: names) {
  System.out.println(option);
  }

4.可变参数 

参数可变化的,可用type...来书写
public int sum(int... n) { //传过来n为一个int型数组
  int tempSum;
  for(int option : n) {
  tempSum+=option;
  }
  /*
  for(int i = 0; i < n.length; i++) {
  tempSum+=n[i];
  }
  */
  return tempSum;
  }
      调用1: sum(1); 
  调用2: sum(1,2,0);
  调用3: sum(1,2,3,4,9);

5.枚举类型
public enum MyColors {
  red,
  black,
  blue,
  green,
  yellow
  }
  
  MyColors color = MyColors.red;
  for(MyColors option : color.values()) {
  System.out.println(option);
  }
  
  /**不能在switch语句里这样写case MyColors.red:
  *这样编译器不会让你通过*/
  switch(color) {
  case red:
  System.out.println("best color is "+red);
  break;
  case black:
  System.out.println("NO " + black);
  break;
  default:
  System.out.println("What");
  break;
  }

6.静态引入
不用导入整个,可以导入静态的方法,字段
import static java.lang.Math.random; //程序开头处
  
  ...
  
  double x = random();

7.标注
@override等方便测试的特性

8. Callable 和 Future ,能力,断言==
分享到:
评论
1 楼 quickSand 2008-08-19  
老兄
第一个泛型的例子
ArrayList animals = new ArrayList();
是不是应该是
ArrayList<String> animals = new ArrayList<String>();
?

相关推荐

    java1.5新特性

    java1.5之后的新特性: 1,枚举(enum) 作用:一般用于代表一组相同类型的常用常量。 原理:语法结构与java类的语法不一样,但是经过编译器编译之后产生的是一个class文件。该class文件经过反编译之后实际上是...

    java1.5新特性_枚举

    java1.5新特性 枚举 问我文字大于20个字没问题吧?我曰:没问题,然后我凑了20个字~

    java1.5新特性.pdf

    Java 1.5 引入的新特性之一就是对枚举(Enumerated Types)的支持,这是对之前版本的一个重大改进,以解决从 C++ 等语言转到 Java 的程序员所抱怨的问题。在 Java 1.5 之前,虽然可以通过定义 `public static final`...

    java1.5新特性[定义].pdf

    Java 1.5 引入的新特性之一就是枚举(Enum)类型,这是对之前版本的一个重大改进,尤其是在从 C++ 等语言过渡到 Java 的开发者中受到了广泛关注。在 Java 1.5 之前,Java 缺乏对枚举类型的原生支持,导致了一些不便...

    jdk1.5新特性

    类型安全的枚举是在 Java 1.5 中引入的另一种新特性,它为枚举类型提供了更好的类型安全性和灵活性。类型安全的枚举不仅避免了使用常量接口所带来的问题,还允许为枚举类型定义方法。 **示例对比:** 传统方式下,...

    kentanvictor#STUDY#java1.5新特性之自动装箱与自动拆箱1

    //这里就是自动的装箱,将3转换成Integer类型并放到集合中自动拆箱包装类自动转为基本类型 Integer &gt;&gt; int面试常见题目:自动拆箱与自动装箱的问

    JDK1.5新特性

    JDK1.5新特性

    JAVA1.5安装包

    这个版本引入了大量的新特性、优化和改进,对Java编程语言有着深远的影响。让我们详细了解一下Java 1.5的主要知识点。 1. **泛型(Generics)** 泛型是Java 1.5最重要的特性之一,允许在类、接口和方法中使用类型...

    jdk1.5新特性介绍

    JDK 1.5的发布标志着Java平台的一次重大进步,通过引入一系列新特性,不仅增强了语言本身的表达能力,还提高了开发者的生产力。泛型、枚举、注解等特性至今仍是Java开发中不可或缺的重要组成部分。此外,JDK 1.5还对...

    JAVA 1.5 API 文档

    这个API文档以中文的形式提供,使得国内开发者能更方便地理解和使用Java 1.5的新特性。 在Java 1.5版本中,引入了许多重要的新特性和改进,对Java编程语言产生了深远的影响。以下是一些关键知识点: 1. **泛型...

    最新JAVA1.5中文API

    在这个"最新JAVA1.5中文API"中,开发者可以找到全面的文档,帮助理解并利用这些新特性进行编程。 首先,让我们来探讨一些Java 1.5中的关键更新: 1. **泛型(Generics)**:这是Java 1.5最显著的变化之一,允许在...

    java 1.5的新特性

    泛型是Java 1.5引入的关键特性之一,它允许我们在集合类中指定元素的类型。在泛型的帮助下,编译器可以在编译时进行类型检查,从而避免了运行时的类型转换异常。例如,可以创建一个只包含String类型的集合`...

    Java1.5的新特性

    Java 1.5,也被称为Java SE 5.0,是Java发展历程中的一个重要版本,它引入了许多新特性和改进,极大地提升了编程效率和代码的可读性。以下是对这些新特性的详细解释: 1. **静态导入(Static Import)** 静态导入...

    java1.5API

    以上是Java 1.5 API中的一些核心特性。`aybook.cn_javzwapjc1230.chm`可能是包含Java 1.5 API文档的CHM(Microsoft Compiled HTML Help)文件,这种格式通常用于存放离线帮助文档。`更多电子书下载.html`可能指向...

    java1.5新特征

    Java 1.5 是一个重要的版本更新,引入了许多新特性,极大地提升了开发效率和代码质量。以下是对这些新特性的详细解释: 1. **自动装箱与拆箱**: 自动装箱是指将基本数据类型(如 int、char 等)自动转换为对应的...

    java1.5api

    Java 1.5 API,也被称为Java SE 5.0(Java Standard Edition 5.0),是Java发展历程中的一个重要里程碑,引入了许多新特性和改进,为开发者提供了更强大的工具和功能。JavaScript API虽然在此描述中一同提及,但它们...

    JAVA jdk1.5的新特性

    1.增强的for循环【foreach{}迭代数组或集合】 格式:for(变量的类型 变量名:集合变量名 ){} 注意:集合变量可以是数组或实现了... 格式:import static java.lang.Math.* 注意:这时候的导入就需要加类名了

Global site tag (gtag.js) - Google Analytics