章节四、2-Switch语句
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语句的更多相关文章
- C#学习笔记(四):switch语句
条件语句 switch语句快速生成枚举方法,复制枚举名在switch()里,双击TAB 快速生成方法,用纠错功能 随机数 using System; using System.Collections. ...
- Java中简单的操作(if语句、常用操作符、switch语句、变量赋值等)
---------------------if语句介绍--------------------------------------------------- class IfDemo { public ...
- 透过IL看C#:switch语句(转)
透过IL看C# switch语句(上) 摘要: switch语句是 C#中常用的跳转语句,可以根据一个参数的不同取值执行不同的代码.本文介绍了当向 switch语句中传入不同类型的参数时,编译器为其生 ...
- goto语句 switch语句
goto语句 #include <iostream> using namespace std; int main() { int i = 1; number: i++; std::cout ...
- C和指针 (pointers on C)——第四章:语句(上)
第四章--语句(上) 总结总结!!! C没有布尔类型,所以在一些逻辑推断时候必须用整型表达式,零值为假,非零值为真. for比while把控制循环的表达式收集起来放在一个地方,以便寻找. do语句比w ...
- 1203.2——条件语句 之 switch语句
用 if else 语句在处理多分支的时候,分支太多就会显得不方便,且容易出现 if 和 else配对出现错误的情况.例如,输入一个整数,输出该整数对应的星期几的英文表示: #include < ...
- 逆向随笔 - switch 语句深入分析
switch case 语句在c语言里还是比較简单的.可是被编译出来之后,优化结果往往让人非常疑惑.全然看不懂,以下我们一次次的尝试,看看编译器究竟把switch语句变成什么样了. ① 先上个最简 ...
- java基础2 判断语句:if ... else 语句和 switch 语句
一.if ... else 判断语句 1.if ... else 判断语句的格式 1.1.格式一 if(判断条件){ 执行不满足条件的语句 } 1.2.格式二 if(判断语句){ 满足条件的语句 }e ...
- C语言switch语句
C语言虽然没有限制 if else 能够处理的分支数量,但当分支过多时,用 if else 处理会不太方便,而且容易出现 if else 配对出错的情况.例如,输入一个整数,输出该整数对应的星期几的英 ...
随机推荐
- Java使用OkHttps工具类调用外部接口
前言 现在公司业务已止不是传统的增删改查等简单的业务处理操作,而是对数据各种联调三方接口与其他系统进行交互等,那么就需要我们在后台java中进行外部接口的调用,本文采用OkHttps工具类对接微信接口 ...
- deque源码1(deque概述、deque中的控制器)
deque源码1(deque概述.deque中的控制器) deque源码2(deque迭代器.deque的数据结构) deque源码3(deque的构造与内存.ctor.push_back.push_ ...
- C++版 - 剑指offer 面试题16:反转链表(Leetcode 206: Reverse Linked List) 题解
面试题16:反转链表 提交网址: http://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca?tpId=13&tqId= ...
- HashMap源码之常用方法--JDK1.8
常用方法 hash(key) static final int hash(Object key) { int h; return (key == null) ? 0 : (h = key.hashCo ...
- ACM--string常见用法
在ACM竞赛中,常常需要将读入的数字的每位分离出来,如果采用取余的方法,花费的时间就会太长,这时候,我们可以将读入的数据当成字符串来处理,这样就方便.省时多了.下面这个程序演示了求一个整数各位的和: ...
- Java实现敏感词过滤 - DFA算法
Java实现DFA算法进行敏感词过滤 封装工具类如下: 使用前需对敏感词库进行初始化: SensitiveWordUtil.init(sensitiveWordSet); package cn.swf ...
- leetcode — climbing-stairs
/** * * Source : https://oj.leetcode.com/problems/climbing-stairs/ * * * You are climbing a stair ca ...
- Keras 构建DNN 对用户名检测判断是否为非法用户名(从数据预处理到模型在线预测)
一. 数据集的准备与预处理 1 . 收集dataset (大量用户名--包含正常用户名与非法用户名) 包含两个txt文件 legal_name.txt ilegal_name.txt. 如下图所 ...
- javaScript之变量与数据类型
http://www.cnblogs.com/yuanchenqi/articles/5980312.html 在了解变量之前,我们首先学习JavaScript的引入方式 JavaScript的引入方 ...
- MySQL中字段字符集不同导致索引不能命中
今天写了一个sql,其中涉及的表中的数据量都差不多为50w左右,查询发现用了8s.这个只是测试服上数据,放到正式服上,肯定一运行就挂了. SELECT Orders. NO, GuidNo, Orde ...