package introduction5;

public class SwitchDemo {

    //switch用于固定值的判断,如星期、人的性别
//if用于判断区间、范围,能够用switch进行判断的,if都能判断,反之则不然 //案列:返回月份天数
static int numOfDay(int year,int month) {
int numDay = 0;
switch (month) {
case 1:
numDay = 31;
//break的作用:如果满足当前条件,就返回numDey的值,跳出switch循环语句,其它的选项都不执行
break;
case 2:
//因为闰年的2月是29天,所以此处需要加if进行判断
//闰年:
//能被4整除且不能被100整除或能被400整除,则判断为闰年,输出天数为29天
if(year%4==0&&year%100!=0||year%400==0) {
numDay = 29;
}
//否则为平年,天数输出为28天
else {
numDay = 28;
}
break;
case 3:
numDay = 31;
break;
case 4:
numDay = 30;
break;
case 5:
numDay = 31;
break;
case 6:
numDay = 30;
break;
case 7:
numDay = 31;
break;
case 8:
numDay = 31;
break;
case 9:
numDay = 30;
break;
case 10:
numDay = 31;
break;
case 11:
numDay = 30;
break;
case 12:
numDay = 31;
break;
/*default:相对于if语句中的else,如果输入的数字不在1~12之间(以上所有条件都不满足),
* 那么就执行default,输出“无效的月份”。
*/
default:
{
System.out.println("无效的月份");
break;
}
}
return numDay;
}
public static void main(String[] args) {
int numDey = numOfDay(78, 30);
//如果给定的月份不在1~12之前,那么打印的结果为“0”
System.out.println("给定年和月里面的天数是:"+numDey);
}
}

自己练习:

package introduction;

import java.time.temporal.WeekFields;

public class Demo {
public static String OfWeek(int number) {
/*
* 自己练习时错误:
* 1、忘记在每个case后面加break关键字。
* 2、不知道怎么在主方法中调用写完的程序,
* 自己调用的方式是先实例化再调用,实际有更简单的方式去验证调用
* 3、default部分需要用大括号括起来
*/
String week = "";
switch(number) {
case 1:
week = "星期一:Monday";
break;
case 2:
week = "星期二:Tuesday";
break;
case 3:
week = "星期三:Wednesday";
break;
case 4:
week = "星期四:Thursday";
break;
case 5:
week = "星期五:Friday";
break;
case 6:
week = "星期六:Saturday";
break;
case 7:
week = "星期日:Sunday";
break;
default:
{
System.out.print("请输入1~7之间的有效数字,");
break;
}
}
return week;
} public static void main(String[] args) {
String week = OfWeek(9);
System.out.println("给定的数字代表:"+week);
}
}

章节四、2-Switch语句的更多相关文章

  1. C#学习笔记(四):switch语句

    条件语句 switch语句快速生成枚举方法,复制枚举名在switch()里,双击TAB 快速生成方法,用纠错功能 随机数 using System; using System.Collections. ...

  2. Java中简单的操作(if语句、常用操作符、switch语句、变量赋值等)

    ---------------------if语句介绍--------------------------------------------------- class IfDemo { public ...

  3. 透过IL看C#:switch语句(转)

    透过IL看C# switch语句(上) 摘要: switch语句是 C#中常用的跳转语句,可以根据一个参数的不同取值执行不同的代码.本文介绍了当向 switch语句中传入不同类型的参数时,编译器为其生 ...

  4. goto语句 switch语句

    goto语句 #include <iostream> using namespace std; int main() { int i = 1; number: i++; std::cout ...

  5. C和指针 (pointers on C)——第四章:语句(上)

    第四章--语句(上) 总结总结!!! C没有布尔类型,所以在一些逻辑推断时候必须用整型表达式,零值为假,非零值为真. for比while把控制循环的表达式收集起来放在一个地方,以便寻找. do语句比w ...

  6. 1203.2——条件语句 之 switch语句

    用 if else 语句在处理多分支的时候,分支太多就会显得不方便,且容易出现 if 和 else配对出现错误的情况.例如,输入一个整数,输出该整数对应的星期几的英文表示: #include < ...

  7. 逆向随笔 - switch 语句深入分析

    switch case 语句在c语言里还是比較简单的.可是被编译出来之后,优化结果往往让人非常疑惑.全然看不懂,以下我们一次次的尝试,看看编译器究竟把switch语句变成什么样了.   ① 先上个最简 ...

  8. java基础2 判断语句:if ... else 语句和 switch 语句

    一.if ... else 判断语句 1.if ... else 判断语句的格式 1.1.格式一 if(判断条件){ 执行不满足条件的语句 } 1.2.格式二 if(判断语句){ 满足条件的语句 }e ...

  9. C语言switch语句

    C语言虽然没有限制 if else 能够处理的分支数量,但当分支过多时,用 if else 处理会不太方便,而且容易出现 if else 配对出错的情况.例如,输入一个整数,输出该整数对应的星期几的英 ...

随机推荐

  1. 国内使用google搜索引擎

    百度搜索 "谷歌访问助手",点击第一个搜索结果,如下: 或者直接点击链接:http://www.ggfwzs.com/  ,然后点击相应的浏览器下载谷歌访问助手,解压,将解压好的谷 ...

  2. 好用的shell可以事半功倍

    程序员离不开shell,一个好用的shell可以事半功倍,推荐zsh以及一些插件 # install zsh $ brew install zsh # install a framework, we ...

  3. Mybatis 缓存分析

    其实本来不想专门的写一篇关于mybatis缓存的博客的.在之前的博客中已经大致的把mybatis的整体流程讲了一遍.只要按照步骤一步步的点进去,关于缓存的代码很容易就能发现.但是今天在看代码的时候突然 ...

  4. Java 代理模式

    熟悉设计模式的人对于代理模式可能都不陌生.那什么事代理呢,例如我们要买一件国外的商品,但是自己买不到只能去找代购,这个代购就是我们的代理.我们来了解下java中的代理 静态代理 我们来举一个开车的例子 ...

  5. 一个前端开发者换电脑的过程(node & 淘宝镜像篇)

    当然,在我们安装了git和vscode之后,我们这个项目,在本地仍然是跑不起来的对吗?这句“npm run dev”就提示着我们需要有一个npm,npm是一个很强大的包管理工具,就像是安卓的应用商店, ...

  6. 基于jQuery消息提示框插件Tipso

    今天要分享的这款jQuery消息提示框插件名叫Tipso,它的特点是可以定义提示框的显示位置,以及动态改变提示框的提示内容,应该说是一款相当灵活的jQuery消息提示框插件.效果图如下: 在线预览   ...

  7. Java 趣史-差点把 Java 命名成了 Silk(丝绸)

    差点把 Java 命名成了 Silk(丝绸) Java 命名的由来 Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名.Java语言中的许多库类名称,多与咖啡有关:如JavaBeans(咖啡豆). ...

  8. [总结] wqs二分学习笔记

    论文 提出问题 在某些题目中,强制规定只能选 \(k\) 个物品,选多少个和怎么选都会影响收益,问最优答案. 算法思想 对于上述描述的题目,大部分都可以通过枚举选择物品的个数做到 \(O(nk^2)\ ...

  9. DLCI 简介

    数据链路连接标识(Data Link Connection Identifier) 帧中继协议是一种统计复用的协议,它在单一物理传输线路上能够提供多条虚电路.每条虚电路都是用DLCI(Data Lin ...

  10. maven创建一个简单的web项目

    1.确认maven插件和配置在eclipse中已经完成 如果没完成,可参考这篇博客:http://www.cnblogs.com/mmzs/p/8191979.html 2.在eclipse中用mav ...