java switch的意思_java switch

java switch的意思_java switchjavaswitch[编辑]概述Java中的switch是“开关”的意思,有时也被划分为一种“选择语句”。根据一个整数表达式的值,switch语句可从一系列代码选出一段执行。一.Java的简介Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

java switch[编辑]

概述

Java中的switch是“开关”的意思,有时也被划分为一种“选择语句”。根据一个整数表达式的值,switch语句可从一系列代码选出一段执行。

一.Java的简介

Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。

二.Java switch的概念

Java中的switch是“开关”的意思,有时也被划分为一种“选择语句”。根据一个整数表达式的值,switch语句可从一系列代码选出一段执行。

三.Java中switch的语句格式

switch ( 整型或字符型变量 )

{

case 变量可能值1 :

分支一;

break;

case 变量可能值2 :

分支二;

break;

case 变量可能值3 :

分支三;

break;

default :

最后分支;

在 switch 的语法里,我们要学到4个关键字:switch、case 、break、default。

在 switch ( 变量 ) 这一行里,变量只能是整型或字符型。程序先读出这个变量的值,然后在各个”case”里查找哪个值和这个变量相等,如果相等,就算条件成立,程序执行相应的分支,直到碰上break或者switch语句结束。

了解一下switch,case,break,default的意思,对理解前面的一切也会有帮助,它们分别是:开关,情况,中断,默认(值)。那么用一句话套起来的说法就是:根据开关值的不同,执行不同的情况,直到遇上中断;如果所有的情况都不符合开关值,那么就执行默认的分支。

四.关于switch中非常重要的注意点

第一、switch ( 整型或字符型变量 ) 中,变量的类型如文中所标,只能是整型和字符类型。它们包含 int,char。当然无符类型或不同的长度整型(unsigned int,short,unsigned char)等都可以。另外,枚举类型(enum)内部也是由整型或字符类型实现。所以也可以。实型(浮点型)数就不行,如:

float a = 0.123;

switch(a) //错误!a不是整型或字符类型变量。

{

….

}

第二、case 之后可以是直接的常量数值,如例中的1、2、3、4,也可以是一个使用常量计算式,如2+2等,但不能是变量或带有变量的表达式,如 a * 2等。当然也不能是实型数,如4.1,或2.0 / 2 等。

switch(formWay)

{

case 2-1 : //正确

case a-2 : //错误

case 2.0 : //错误

}

另外,在case 与常量值之后,需要一个冒号,请注意不要疏忽。

第三、break 的作用。

break 使得程序在执行完选中的分支后,可以跳出整个switch语句(即跳到switch接的一对{}之后),完成switch。如果没有这个break,程序将在继续前进到下一分支,直到遇到后面的break或者switch完成。

比如,假设现在程序进入case 1: 中的分支,但case 1 的分支这回没有加break:

case 1 :

System.out.println(“您是通过搜索引擎来到本网站的。”);

case 2 :

System.out.println(“您是通过朋友介绍来到本网站的。”);

那么,程序在输出 ”您是通过搜索引擎来到本网站的。” 之后,会继续输出case 2中的 ”您是通过朋友介绍来到本网站的。” 。

请大家将前面实例中的代码片段改为如下(红色部分,即将所有的break都通过加//使之无效。):

case 1 :

System.out.println(“您是通过搜索引擎来到本网站的。” );

//break;

case 2 :

System.out.println(“您是通过朋友介绍来到本网站的。”);

//break;

case 3 :

System.out.println(“您是通过报刊杂志来到本网站的。”);

//break;

case 4 :

System.out.println(“您是通过其它方法来到本网站的。”);

//break;

default :

System.out.println(“错误的选择!请输入1~4的数字做出选择。”);

运行后,结果会是如何?请大家动手试试,然后在作业中回答我。

第四、default是可选中,前面我们已经说过它的用处,及如果没有default,程序在找不到匹配的case分支后,将在switch语句范围内不做什么事,直接完成switch。大家也可以在实例中将default的代码注释掉,然后试运行,并且在选择时输入5。

//default :

//cout << “错误的选择!请输入1~4的数字做出选择。” << endl;

第五、必要时,可在各个case中使用{}来明确产生独立的复合语句。

前面我们在讲if…语句和其它流程控制语句时,都使用{}来产生复合语句:

if (条件)

{

分支一;

}

除非在分支中的语句正好只有一句,这里可以不需要花括号{}。但在switch的各个case语句里,我们在语法格式上就没有标出要使用{},请看:

switch ( 整型或字符型变量 )

{

case 变量可能值1 :

分支一;

break;

case 变量可能值2 :

….

}

一般教科书上只是说 case 分支可以不使用{},但这里我想提醒大家,并不是任何情况下case分支都可以不加{},比如你想在某个case里定义一个变量:

switch (formWay)

{

case 1 :

int a=2; //错误。由于case不明确的范围,编译器无法在此处定义一个变量。

case 2 :

}

在这种情况下,加上{}可以解决问题。

switch (formWay)

{

case 1 :

int a=2; //正确,变量a被明确限定在当前{}范围内。

case 2 :

}

参考资料:

扩展阅读:

相关词条:

合作编辑:

分享到:

更多

网络营销词典内容均由网友提供,仅供参考。如发现词条内容有问题,请发邮件至info # wm23.com。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158258.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • win10键盘全部没反应_Win10的键盘失灵解决办法

    win10键盘全部没反应_Win10的键盘失灵解决办法最近发现Win10的笔记本,键盘有点失灵,要么按了没反应,要么重复输入,很是恼火,以为是笔记本键帽坏了没弹起来,琢磨了下,发现是win10系统问题,赶紧记下来做笔记1、打开“设置”->”系统”->”电源和睡眠”->”其他电源设置”点击“选择电源按钮的功能”->”更改当前不可用的设置”->将启用快速启动取消勾选,保存修改退出。接下来右键我的电脑-&…

    2022年5月4日
    40
  • Python和sendfile[通俗易懂]

    Python和sendfile[通俗易懂]sendfile(2)isaUNIXsystemcallwhichprovidesa“zero-copy”wayofcopyingdatafromonefiledescriptor(afile)toanother(asocket).Becausethiscopyingisdoneentirelywithinthekernel,sen…

    2022年5月3日
    50
  • android点滴之标准SD卡状态变化事件广播接收者的注冊「建议收藏」

    android点滴之标准SD卡状态变化事件广播接收者的注冊

    2022年2月3日
    40
  • navicat premium15激活码【2021最新】

    (navicat premium15激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlWKAWTQAJR5-eyJsaWNlbnNlSW…

    2022年3月22日
    110
  • AutoSize属性问题探索

    AutoSize属性问题探索AutoSize属性问题探索如有错误,欢迎指出Google在Android8.0(APIlevel26)中,为TextView加入了一个动态属性AutoSize。在布局文件中,直接设置autoSizeTextType属性为uniform即可。这样,文本内容便会忽略android:textSize属性,从水平和垂直两个方向上缩放文本的内容。android:autoSizeTextType=”uniform”android:autoSizeMaxT

    2022年6月5日
    37
  • Pycharm入门使用教程(for python)「建议收藏」

    Pycharm入门使用教程(for python)「建议收藏」1.新建项目打开2.选择解释器选择了合适自己python代码的解释器,编译才不会出错settings-project-Interpreter-选择合适自己的python3.x或者python2.x3.安装模块settings-project-Interpreter-右边‘+’-选择自己想要安装的模块4.设置字体settings-Appearance&Behaviorsettings-Editor-colorscheme-scheme-选择自己想要的工作区域风格5.设置编码可解

    2022年8月28日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号