今天在 developerWorks 中国看到一篇文章,用 for/in 在 Java 5.0 中增强循环,看到这样的一段:
这是资深电脑程序员都知道的一条最基本的原理:因为 更短 意味着 打字更少,所以更短自然也就更好。这个哲学造就了 vi 这样的 IDE,在这类 IDE 中,像 :wq!
和 28G
这样的命令拥有丰富的含义。这个哲学还导致一些最神秘的代码,比如说,变量 ar
代表 Agile Runner(也可能是 Argyle,或者 Atomic Reactor 等等,总之,您明白就好)。
有些时候,在努力实现短小的时候,程序员会将明确性抛到脑后。也就是说,过于短小和过于繁冗的代码都会让人感到痛苦不堪。变量名为 theAtomicReactorLocatedInPhiladelphia
与名为 ar
的变量一样让人讨厌和不方便。一定会有一个让人高兴的解决方法,不是吗?
这个让人高兴的方法(至少我是这么认为的)是以寻找完成某事的 方便 途径为出发点,不是为了短小而短小。作为这类解决方案的一个好例子,Java 5.0 引入了新版的 for
循环,我把它称为 for/in
。它也被称为 foreach,有时也叫作 增强的 for,但这些指的都是同一个构造。不管您叫它什么, for/in
都会使代码变得更简单,正如您在本文中将看到的那样。
以寻找完成某事的 方便 途径为出发点,不是为了短小而短小--------------这就是选择明确与简短要考虑的问题。