JAVA语言中冒号的用法

近来由于本人要介入android平台的开发,所以就买了本JAVA语言的书学习。学习一段时间来,我的感觉是谭浩强就是厉害,编写的《C编程语言》系列丛书不愧是经典。书中对C语言的介绍既系统又全面。几乎C语言规范的每一个技术细节都可以介绍到,而且全书给人的感觉就像做数学证明题,系统性很强。而反观JAVA语言方面的书籍,可能是本人看得不多,感觉介绍得都不全面,并且没有系统性,许多规范细节往往简单介绍一下,然后给个程序事例就草草结束了,让人不容易理解,更有些细节扎根就没有涉及到。这种感觉就像大学里的英语考试,我们总在稀里糊涂中通过或者挂掉。所以本人一度有自己也写一本类似谭教授C语言介绍一样的JAVA工具书的想法。(嘿嘿,这恐怕只是想法而已。)

书不一定能出,但在学习过程中收集研究一些细节知识我还是可以做到的。下面就简单介绍一下 JAVA语言中冒号的用法。

>用法1 :

用于问号表达式  条件表达式 ?程序块1 :程序块2 ;

解释:如果条件表达式为真,则本程序语句执行程序块1,程序块1的值即为整个表达式的值, 否则为表达式2的值。

注意,java只有问号表达式,而没有问号语句,问号表达式加分号不能构成程序语句。

>用法2 :

用于开关语句(switch语句)的条件标签

switch(变量)

{

case value1 :

程序块 ;

case value2 :

程序块 ;

……

default :

程序块 ;

}

解释:程序从上到下判断每一个case后的value值是否和switch后的变量值是否相等,如果不相等则继续判断下一个case,否则从该case后程序块开始执行程序。如果所有case后的值都和变量的值不相等,如果有,则执行default后的程序块。

>用法3 :

用于continue语句的跳转标签

JAVA语句的continue 语句有些特殊,有两种用法 1. 不带标签 2.带标签。不带标签的用法和C语言一样,表示循环语句中的程序执行到此不再执行后面的语句,而是直接执行下一次循环。而带标签的用法类似于C语言的goto语句,当程序执行到此处直接跳转到指定的标签处执行标签后的程序。

>用法4 :

用于循环中集合元素的遍历

for(元素变量 : 元素集合)

{

程序块 ;

}

解释:如果元素集合中所有元素都被遍历则结束此循环,否则执行程序块。

程序示例 :

import java.util.*;

public class sample {

        
private void print()

        
{

           
String[] str = {"*************************************",

                           
"The sample show four usages of ':'",

                           
"  1. switch sentence", "  2. ?
condition",

                            " 
3. continue skipping",

                           
"  4. element reach in the collection",

                           
"*************************************"} ;

  

           
for(String e : str)

               
System.out.println(e) ;  

        
}

public
static void main(String[] args)

        
{

              Random
rand = new Random(10) ;

             
int val = 0 ;

             
boolean tmp = false ;

  

label :   

             
for(int i = 0; i < 10;)

             
{   

                 
switch(i)

                 
{

                 
case 0 :

                 
case 1 :

                 
case 2 :

                     
System.out.println("for loop" + i + " ") ;

                     
i++ ;

                     
break ;

                 
default :

                     
System.out.println() ;

                     
while(true)

                     
{

                         
val = rand.nextInt(10) ;

                         
if(val > 5 ? true : false)

                          {

i = 10 ;

                             
System.out.println() ;

                             
continue label ;

                          
}

                          
System.out.println("[continue while loop]" + " val = " + val)
;

                     
}

}   

             
}  

             
sample s = new sample() ;

             
s.print() ;  

         
}

   }

运行结果 :

for
loop0

    for
loop1

    for
loop2

[continue
while loop] val = 3

    [continue
while loop] val = 0

    [continue
while loop] val = 3

    [continue
while loop] val = 0

*************************************

    The sample
show four usages of ':'

    1. switch
sentence

    2. ?
condition

    3. continue
skipping

    4. element
reach in the collection

   
*************************************

上一篇:Missing artifact com.oracle:ojdbc14:jar:10.2.0.3.0


下一篇:nodejs中yield的用法?