switch()只能带字符型吗?

来源:4-6 Java条件语句之 switch

长颈鹿夏松

2017-02-28 23:10

switch()只能带字符型吗?如果存在匹配“快递公司”与“圆通”,“申通”,“韵达”的匹配,岂不是能使用switch()?这个功能和条件语句有何差异和优势?

写回答 关注

4回答

  • The十King
    2017-02-28 23:41:23

    switch只能用于整型变量和字符型变量,像你说的“快递公司”“圆通”都不能使用switch语句,switch语句代码较长,但是执行效率比if要高

  • glares
    2017-02-28 23:38:51

    switch()后面可以带字符型或者整数型,即char和int。对快递公司的选择完全可以使用switch()当然使用if语句从结果上来说也是一样的。但是用条件语句会有多次判断。switch语句是检验判定值,然后选择相对应的语句执行。而if语句是一个一个的执行,直到执行到符合判定结果的那一个if语句。也就是说用if语句的话,在编程的时候把可能性最高的、出现频率最高、可能性最大的选项放在前面,可以提高程序的运行速度。

  • qq_初三_0
    2017-02-28 23:33:03

    你是不是没看仔细了,这是注意里面的几点

    不得不说的几点小秘密:

    1、 switch 后面小括号中表达式的值必须是整型或字符型

    2、 case 后面的值可以是常量数值,如 1、2;也可以是一个常量表达式,如 2+2 ;但不能是变量或带有变量的表达式,如 a * 2

    3、 case 匹配后,执行匹配块里的程序代码,如果没有遇见 break 会继续执行下一个的 case 块的内容,直到遇到 break 语句或者 switch 语句块结束 


  • 慕粉3977126
    2017-02-28 23:32:31

    没有呀,整型也是可以的。跟IF相比,它能够对比的条件更多些,也不显得复杂

Java入门第一季(IDEA工具)升级版

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

1165522 学习 · 17586 问题

查看课程

相似问题