`
zckai
  • 浏览: 18628 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Java 7新功能代码范例

阅读更多

JDK7 milestone 5 更新已可以下载。现在,开发人员有机会尝试使用这种语言的新语法进行编码,然后看看它到底如何。今天我们介绍了Java 7中已经完成的七大功能,而以下四个主要的更改会影响到我们使用 java 以及 JKD 7 编码的方式:
◆在数字中使用下划线
◆改进的通用实例创建类型推断(diamond)
◆在switch语句中使用字符串
◆使用二进制字符

下面是一个简短的示例,用于检验这些新功能。使用普通的文本编辑器,还有你离不开的老朋友 javac 和 java,可以进行测试(IDE 还不支持新的语法,应该会报错)。

01 public class Jdk7Tests {  
02     public static void main(String[] args) {  
03         Jdk7Tests jdk7Tests = new Jdk7Tests();  
04         jdk7Tests.integersWithUnderscores();  
05         jdk7Tests.stringSwitch();  
06         jdk7Tests.binaryLiteral();  
07         jdk7Tests.diamond();  
08     }  
09     private void integersWithUnderscores()  
10     {  
11         int i = 1_2;  
12         System.out.println(i);  
13         i*=10;  
14         System.out.println(i);  
15         int j=2_0;  
16         System.out.println(i-j);         
17     }  
18     private void stringSwitch()  
19     {  
20         String key = "akey";  
21         switch (key)  
22         {  
23         case "":  
24         {  
25             System.out.println("Nothing");  
26             break;  
27         }  
28         case "akey":  
29         {  
30             System.out.println("Matched akey");  
31             break;  
32         }  
33         default:  
34         break;  
35         }  
36     }  
37     private void binaryLiteral()  
38     {  
39         byte aByte = (byte)0b001;  
40         short aShort = (short)0b010;  
41         System.out.println(aByte + " " + aShort);  
42     }  
43     private void diamond()  
44     {  
45         Set set = new TreeSet<>();  
46         set.add("c");  
47         set.add("b");  
48         set.add("a");  
49         for (String val : set)  
50         {  
51             System.out.println(val);  
52         }  
53     }  
54 }

下划线和数字:

对于身份证或电话号码,数字中间需要有分割符号的数字,该功能非常有用。不必再将数据放入一个字符串中,然后对其进行语法分析,剔除下划线,再将其放入一个整数中。不过,当你使用带有下划线的数字进行运算时,可能会有点困惑。比如 1_2 * 2 的结果是多少?从上述示例中代码,可以看出,JVM 处理这些运算时将下划线剔除了。因此,1_2 * 10 = 120,并且 120 – 2_0 = 100。很简单。

Diamond:

这个功能应该可以简化集合的实例化。为了迎接 JKD 7 的到来,是时候更新我的自动完成代码模板了。按照我的看法,读 diamond()方法中的代码,稍微容易点。不过,对于语法没有改善什么。

使用字符串的 switch 语句:

这是相当不错的功能。现在除了整数等等之外,你还可以使用字符串进行跳转(swtich)。利用这个功能,可简化将整数变量分配到相应的字符串变量的代码。包含多处回调方法的代码通常会在某一处设置一个整数变量,表示利用 switch 构造,找到某个特定字符串,然后稍后对此进行处理。利用这个技巧,某些开发人员编写了使用 SAX 处理 XML 的代码。对于使用了这个功能的代码,应该能够减少几行。

二进制字面量:

现在,你可以使用二进制字面量这种表示方式,并且使用非常简短的代码,可将二进制字符转换为数据类型,如在byte或short。我还想不到哪里会经常用到这个功能,但某些涉及到比特的编程实现问题会较容易解决。

其他有趣的功能不一定会影响到编程,比如更好的算法实施和性能改善。据说对于某些应用程序,这些改善让性能提升了数倍。有时间,你应该亲自测试一下。

<script type="text/javascript"></script>

分享到:
评论

相关推荐

    Java范例开发大全代码

    "Java范例开发大全代码" 提供了丰富的实例,帮助开发者深入理解和掌握Java的各项技术。这个压缩包很可能是包含了一系列Java编程的示例代码,旨在帮助初学者和经验丰富的程序员在实践中学习和提升。 首先,让我们...

    Java JDK 7学习笔记源代码

    《java jdk 7学习笔记》针对java se 7新功能全面改版,无论是章节架构或范例程序代码,都做了重新编写与全面翻新。并详细介绍了jvm、jre、java se api、jdk与ide之间的对照关系。必要时从java se api的源代码分析,...

    java源码包---java 源码 大量 实例

    util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码加以...

    Java范例开发大全源程序(下)

    7. **高级特性**:这部分可能涉及Java的反射、动态代理、注解、枚举、Lambda表达式等高级特性,这些都是Java 8及更高版本引入的新功能,能够提升代码的可读性和效率。 通过《Java范例开发大全源程序(下)》的实例...

    java范例开发大全源代码

     实例1 开发第一个Java程序 7  第2章 Java基础类型与运算符(教学视频:39分钟) 9  2.1 基础类型 9  实例2 自动提升 9  实例3 自动转换 10  实例4 常用基础类型之强制转换 11  2.2 运算符 12 ...

    Java开发技术大全(500个源代码).

    代码范例列表 第1章 示例描述:本章演示如何开始使用JDK进行程序的开发。 HelloWorldApp.java 第一个用Java开发的应用程序。 firstApplet.java 第一个用Java开发的Applet小程序。 firstApplet.htm 用来装载...

    Java灵感编程范例源代码81-101

    Java灵感编程范例源代码81-101是一系列基于Java编程语言的示例代码,旨在激发开发者们的创新思维和提升编程技能。这个压缩包包含从第81个到第101个示例,涵盖了多种Java编程的实用技巧和经典算法。通过这些源代码,...

    java即时通讯im源码范例合集nw(由浅入深代码范例和详细说明).docx

    7. **服务器端实现**:虽然这里只展示了客户端代码,但完整的 IM 系统还需要一个服务器端,用于接收多个客户端的连接请求,存储和转发消息,以及处理各种网络和业务逻辑。 8. **消息格式**:为了传输复杂的数据,如...

    俄罗斯方块java源代码

    9. 可扩展性:优秀的源代码应具备良好的可读性和可维护性,方便未来添加新功能或优化现有代码。 通过深入研究这个项目的源代码,开发者不仅能学到Java编程基础,还能掌握游戏开发的核心技巧,为今后的项目积累经验...

    JAVA编程模式与范例1

    《JAVA编程模式与范例1》是一本专为高级JAVA开发者设计的教程,它深入探讨了编程中的六种核心模式,并通过近200个实际的代码范例,帮助读者理解并掌握这些模式的运用。这不仅提升了学习的趣味性,也增强了实践能力。...

    JAVA语言与其程序设计范例

    **JAVA语言与其程序设计范例** 本书主要涵盖了Java语言的基础知识和高级特性,旨在帮助读者深入理解Java编程语言,从而能够熟练地进行程序设计。Java作为一种面向对象的、跨平台的编程语言,自诞生以来就受到了广大...

    Java JDK7学习笔记-光盘

    《Java JDK7学习笔记》针对java se 7新功能全面改版,无论是章节架构或范例程序代码,都做了重新编写与全面翻新。并详细介绍了jvm、jre、java se api、jdk与ide之间的对照关系。必要时从java se api的源代码分析,...

    java即时通讯im源码范例合集nw(由浅入深代码范例和详细说明)(合集).docx

    虽然提供的 Java 代码示例相对简单,但它可以作为理解 IM 系统工作原理的基础。在实际开发中,你需要构建更复杂的架构,结合数据库、缓存、分布式系统等技术,以实现一个功能完备且可靠的即时通讯应用。

    Java+JDK+7学习笔记_林信良编著.pdf

    《Java JDK7学习笔记》针对java se 7新功能全面改版,无论是章节架构或范例程序代码,都做了重新编写与全面翻新。并详细介绍了jvm、jre、java se api、jdk与ide之间的对照关系。必要时从java se api的源代码分析,...

    Alice,java智能学习代码

    对于初学者来说,理解并实践这些代码将是一个极好的起点,而对于经验丰富的开发者,这个项目可能提供了一个快速验证和实验新想法的平台。 总的来说,"Alice,java智能学习代码"是一个面向Java开发者的AI学习资源,...

    java即时通讯im源码范例(由浅入深代码范例和详细说明)(合集).docx

    4. **消息存储与同步**:为了防止消息丢失,需要将消息存储在服务器,以便新加入的用户或者离线用户可以获取历史聊天记录。同时,消息同步也是重要的,确保所有参与者都能接收到相同的消息序列。 5. **安全与隐私**...

    tomcat与java web源代码

    主要内容包括:Tomcat和Java Web开发的基础知识,Java Web开发的高级技术,Tomcat与当前其他通用软件的集成,以及Tomcat的各种高级功能。 书中内容注重理论与实践相结合,列举了大量具有典型性和实用价值的Web应用...

    java事件处理编程范例

    本编程范例主要聚焦于Java的事件监听器和事件适配器机制,以及如何在J2EE(Java 2 Platform, Enterprise Edition)环境中实现这些概念。 首先,我们要理解Java事件模型。Java事件模型基于发布/订阅模式,其中事件源...

    java范例经典02

    Java是一种广泛应用的面向对象的编程语言,以其跨平台的特性、强大的功能和丰富的类库而闻名。下面,我们将深入探讨这些标签所涵盖的知识点,并结合“新しいフォルダ”中的文件,来阐述Java学习的重要方面。 1. **...

    编程规范和范例java编码规范

    Java编程规范和范例是确保代码质量和可维护性的重要指南,涵盖了从排版到程序效率等多个方面。以下是对这些规范的详细解释: 1. **排版**:排版是代码可读性的基础。规范要求使用4个空格进行缩进,以保持代码的清晰...

Global site tag (gtag.js) - Google Analytics