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
*************************************
JAVA语言中冒号的用法的更多相关文章
- JAVA语言中的修饰符
JAVA语言中的修饰符 -----------------------------------------------01--------------------------------------- ...
- Java语言中的面向对象特性总结
Java语言中的面向对象特性 (总结得不错) [课前思考] 1. 什么是对象?什么是类?什么是包?什么是接口?什么是内部类? 2. 面向对象编程的特性有哪三个?它们各自又有哪些特性? 3. 你知 ...
- MATLAB中冒号的用法
MATLAB中冒号的用法 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ matlab中冒号代表步长,用实例来说明 >> A=[1 2 3 ...
- Java语言中的面向对象特性:封装、继承、多态,面向对象的基本思想(总结得不错)
Java语言中的面向对象特性(总结得不错) [课前思考] 1. 什么是对象?什么是类?什么是包?什么是接口?什么是内部类? 2. 面向对象编程的特性有哪三个?它们各自又有哪些特性? 3. 你知道jav ...
- Java语言中的异常处理
Java语言中的异常处理包括声明异常.抛出异常.捕获异常和处理异常四个环节. throw用于抛出异常. throws关键字可以在方法上声明该方法要抛出的异常,然后在方法内部通过throw抛出异 ...
- 列举java语言中反射的常用方法
package review;/*12:43 2019/7/21*/ import model.AnotherClass; import model.OneClassMore; import mode ...
- Java语言中的正则表达式
正则表达式是什么? 正则表达式是一种强大而灵活的文本处理工具.初学正则表达式时,其语法是一个难点,但它确实是一种简洁.动态的语言.正则表达式提供了一种完全通用的方式,能够解决各种字符串处理相关的问题: ...
- Java语言中使用OpenMP
从去年年中,开始学习Java,主要是维护公司用Java编写的服务器软件.目前,该服务器软件遇到一个问题,在下载大文件时,如果同时下载的用户很多, 服务器软件工作会出现异常,有的用户无法下载.服务器硬件 ...
- MATLAB中冒号的用法解析
MATLAB中冒号的用法解析 1.: 表示所有的意思. (1)如:a(1,:) 表示a的第1行,示例: 结果: 同样的如果a(2,:)表示a的第2行 (2)反过来,a(:,2) 表示a的第3列,示例: ...
随机推荐
- Android命令行工具logcat详细用法!
logcat是Android中一个命令行工具,可以用于得到程序的log信息. 见板凳详细说明! 本贴内容来自网络,引用网址为:http://hi.baidu.com/%C9%C1%D2%AB% ...
- xmppserver
http://highscalability.com/blog/2014/1/6/how-hipchat-stores-and-indexes-billions-of-messages-using-e ...
- JSP中EL表达式取值问题记录(已解决)
***************************2015-10-28 22:21************************* 问题描述如下: 在当前的jsp页面已经有了如下代码: < ...
- nginx的RTMP协议服务器
nginx的RTMP协议服务器 by ahuner 通过以下的配置,可以使nginx接收RTMP流,并在web上播放实时视频. 1.openssl安装 nginx需要http_ssl_module模块 ...
- 25个最佳最闪亮的Eclipse开发项目
http://blog.csdn.net/howareyoutodayyhz/article/details/8264599 25个最佳最闪亮的Eclipse开发项目 标签: eclipseEclip ...
- Spring 笔记1
1.在java开发领域,Spring相对于EJB来说是一种轻量级的,非侵入性的Java开发框架,曾经有两本很畅销的书<Expert one-on-one J2EE Design and Deve ...
- log4j配置日志系统
1. lib里加入3个包 slf4j-api, slf4j-log4j12, log4j 2. 在src下 创建log4j.properties ### direct log messages to ...
- smali插入log,打印变量
一:Log打印变量: Log打印字符串: #liyanzhong debug const-string v1, "TAG" const-string v2, "xunbu ...
- source command not found in sh shell解决办法
在Ubuntu系统中执行脚本的时候突然出现错误"source command not found in sh shell" 这个其实在Ubuntu 当中 执行脚本默认的使用的是da ...
- [python]小练习__创建你自己的命令行 地址簿 程序
创建你自己的命令行 地址簿 程序. 在这个程序中,你可以添加.修改.删除和搜索你的联系人(朋友.家人和同事等等)以及它们的信息(诸如电子邮件地址和/或电话号码). 这些详细信息应该被保存下来以便以后提 ...