我是菜鸟我怕谁
没文化真可怕 高调做事 低调做人
博客园
首页
博问
闪存
联系
订阅
管理
随笔- 16 文章- 0 评论- 16
说一个一直对Switch default的误解,也算是写的第一个帖子吧。
记得第一次接触 Swith 关键字时还是在高中的时候,那时是在学习C语言(好难的一门语言,要精通真够麻烦的,我学的就十分不好,
)。但是前几天用了一下Java,偶遇一个一直被误解的关键字,
switch
中的
default
,当时遇到的代码如下:
class
mySwitch
{
public
static
void
main(String[] args)
{
int
intA
=
0
;
switch
(intA)
{
default
:System.out.println(
"
default
"
);
break
;
case
0
:System.out.println(
"
0
"
);
break
;
}
}
}
用我当时对他的误解认为程序,从上往下走,遇到 default 就会去执行 输出 “default”,可是输出的结果却是
觉得不对劲,于是便又写了一段C语言的代码。
main()
{
int
intA
=
0
;
switch
(intA)
{
default
:printf(
"
default
"
);
break
;
case
0
:printf(
"0
"
);
break
;
}
}
可是输出的结果却还是 0
所以看来 这个关键字应是先去判断他所有的可能,如果没有的话再去执行default
于是又试了下C#,代码如下:
using
System;
using
System.Collections.Generic;
using
System.Text;
namespace
ConsoleApplication1
{
class
Class3
{
static
int
intA
=
0
;
public
static
void
Main()
{
switch
(intA)
{
default
: Console.Write(
"
Default
"
);
break
;
case
0
: Console.Write(
"
0
"
);
break
;
}
Console.Read();
}
}
}
输出结果依然为 “0”,断点调试,程序依然是先走的Case 0,输出了0 ,然后跳到了 break;
哎~!一直被误解着这样的结果,当然这样的情况在一般的时候是遇不到的,它常出现的地方是那些练习题中的。故意将default 写到最上面,然后让找结果。以后真要注意了。:(
另外还试验了 VB.Net。代码如下:
可能你已经能看到了出现了波浪线,其中的提示为
看来VB.Net 中是不允许这样写的。
看来以后要好好的搞一搞这样的怪写法,弄出来的结果了。不然真会搞错些东西。
写的东西很烂,不过算是给自己留一个印象吧。 先闪,免得一会弄一身 番茄。
标签:
学习总结
绿色通道:
好文要顶
关注我
收藏该文
与我联系
posted @ 2008-03-25 17:32
天生俪姿
阅读(2712)
评论(3)
编辑
收藏
发表评论
1501318
回复
引用
查看
#1楼
2008-05-06 18:58
留恋星空
呵呵。
回复
引用
#2楼
2008-09-29 19:57
皮皮鲁语录[未注册用户]
显然进入switch的判断符是与case一一对应的。default不是必须的。难道你认为switch内部执行顺序与default的位置有关?
回复
引用
#3楼
2009-04-13 00:38
WKV[未注册用户]
写得很好啊,很有帮助啊!
我就在找有关的资料(因为自己懒得写程序去验证)。
非常感谢你!
注册用户登录后才能发表评论,请
登录
或
注册
,
返回博客园首页
。
首页
博问
闪存
新闻
园子
招聘
知识库
最新IT新闻
:
·
iPhone 5四大猜想:泪珠状 带LED苹果标识
·
当当网Q4整体亏损1.3亿元 上年同期净利润1480万元
·
把孩子培养成为合格Geek的七个方法
·
担心网购的衣服不合身? 创业公司Clothes Horse用“问答”就能解决你的难题
·
评价社交媒体活动ROI的三个精确指标
»
更多新闻...
最新知识库文章
:
·
编程的艺术:漂亮的代码和漂亮的软件
·
GIT分支管理是一门艺术
·
编程:是一门艺术
·
编程是一门艺术吗?
·
对Java初学者的忠告
»
更多知识库文章...
China-pub 2011秋季教材巡展
China-Pub 计算机绝版图书按需印刷服务
公告
IT新闻:
昵称:
天生俪姿
园龄:
4年3个月
粉丝:
19
关注:
36
<
2008年3月
>
日
一
二
三
四
五
六
24
25
26
27
28
29
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
搜索
常用链接
我的随笔
我的评论
我的参与
最新评论
我的标签
更多链接
我的标签
GC
(1)
WinXP
(1)
学习总结
(1)
Asp.Net
(1)
Excel
(1)
.Net
(1)
垃圾回收
(1)
随笔分类
.Net(3)
(rss)
技术相关(7)
(rss)
随感(1)
(rss)
随笔档案
2009年12月 (1)
2008年12月 (1)
2008年4月 (4)
2008年3月 (5)
2008年2月 (4)
2007年11月 (1)
关注空间
Yes! B/S !
(rss)
Clingingboy
e联在线敏捷开发平台
webabcd
(rss)
老赵点滴
(rss)
行者
一个自己写框架的人
我的好友
编程浪子
风满不秋
老徐的博客(C++)
桃子
驿路梨花
学习园地
ASP.NET AJAX - Q & A专用文章
初学 ASP.NET AJAX 系列
设计模式初学者系列