Java中少为人知的小点子


作者:无风浪 | 来源:Examlink | 日期:08-10 | 字体: [ ]

本文简介:或许你已经听过goto语句之争,也知道在Java中goto仍然是一个保留的keyword,但不允许使用。

  1.废话
  或许你已经听过goto语句之争,也知道在Java中goto仍然是一个保留的keyword,但不允许使用。先来看看goto的经典使用方法:
   1:statement1;
   2:statement_label_for_section2:
   3:statement2;
   4:goto statement_label_for_section2;
  可以看出 2:statement_label_for_section2: 为一代码片段(Section)的开始标记。
  Java语言中不允许使用goto,但可以使用像2:statement_label_for_section2: 一样的代码片段标记作为 break/continue的跳转目标。
  相关标准文件请参见:<<Java Language Spec. >>14.7 Labeled Statements

  2.应用
  嵌套循环中,我有时会需要从内循环中直接跳到外循环。用Labeled Statements就可以方便实现。
   1:                for(int I1 = 0; I1 < 10; I1++) {
   2:                        loop1:
   3:                        for(int I2 = 0; I2 < 20; I1++) {
   4:                                break loop1;
   5:                        }
   6:                }                
  continue的用法与break的用法是一样的。
  Java语言中还有很多没有广泛应用的小点子。请参见:<<Java Language Spec. >>

  3.Blocks
  <<Java Language Spec. >>14.2 Blocks
  或许你跟我一样都是个懒鬼。特别在Test Case 代码当中,我经常需要在同一Method中定义一大堆的对象,这些对象的操作大者是大同小异的,你应该知道我在想什么了:Copy&Past。而为每个对象都起一个不同的名字是件痛苦的事。同时这些对象往往只是短命鬼。
   1:import java.util.ArrayList;
   2:import java.util.Collection;
   3:
   4:public class T2 {
   5:
   6:        public static void main(String[] args) {
   7:                {
   8:                        Collection c = new ArrayList();
   9:                        c.add( "1" );
  10:                        c.clear();
  11:                }
  12:                {
  13:                        Collection c = new ArrayList();
  14:                        c.add( "2" );
  15:                        c.clear();
  16:                }
  17:        }
  18:
  19:} 


用户名: 新注册) 密码: 匿名评论 [所有评论]

评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
  • 计算机二级JAVA语言 二级JAVA语言辅导 二级JAVA编写
如果你觉得一篇文章有用,你可以在每篇后面参与评论,或者查看其他人的评论,请保证你的评论对大家友好。
点这里评论
或者您可以来资源论坛参与讨论,一切都是免费的,不过可能需要麻烦您注册一下。
点这里讨论
把你的文章登陆在这里,让大家来分享你的文章。请立即登陆发表!
点这里投稿