Java基础-程序流程控制第一弹(分支结构/选择结构)
Java基础-程序流程控制第一弹(分支结构/选择结构)
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
一.if语句
1>.if语句的第一种格式
if(条件表达式){ 语句体; } ........//其它语句
/*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ import java.util.Scanner; public class JudegmentLetter{
public static void main(String[] args){
//从键盘读取一个字符,判断这个字符是否为英文字母,a~z以及A-Z.
Scanner Input = new Scanner(System.in);
System.out.print("请输入一个字符:>>>");
String str = Input.next();
char firstLetter = str.charAt(0); //从键盘上去读第一个字符 //判断这个字符是否为英文字母
if(('A' <= firstLetter && firstLetter <= 'Z')||('a' <= firstLetter && firstLetter <= 'z')){
System.out.println("输入了英文字母:"+firstLetter);
} }
}
2>.if语句的第二种格式
if(条件表达式){
语句体1;
}else{
语句体2;
}
........//其它语句
/*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ import java.util.Scanner; public class OddEven{
public static void main(String[] args){
Scanner Input = new Scanner(System.in);
System.out.print("请输入一个整数:>>>>");
int num = Input.nextInt(); //判断奇数还是偶数
if( num % 2 == 0){
System.out.println( num + "是偶数!" );
}else{
System.out.println( num + "是奇数!" );
}
}
}
/*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ import java.util.Scanner; public class UserLogin{
public static void main(String[] args){
/*
从键盘输入用户名和密码,判断是否为合法用户
假设合法的用户名是:yinzhengjie
假设合法的密 码是:123
*/
Scanner Input = new Scanner(System.in);
System.out.print("请输入用户名:>>>");
String username = Input.next(); //从键盘上获取用户名
System.out.print("请输入密 码:>>>");
String password = Input.next(); //从键盘上获取密 码 //判断用户是否为合法用户
if("yinzhengjie".equals(username) && "123".equals(password)){
System.out.println("登录成功!");
}else{
System.out.println("登录失败,用户名或密码不正确!");
}
}
}
用户登录脚本,难点是在于字符串比较的方式!
/*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ import java.util.Scanner; public class BuildTriangle{
public static void main(String[] args){
/*
判断输入的三个数字能够构成三角形
*/ Scanner Input = new Scanner(System.in);
System.out.print("Please enter the length:>>>");
int length = Input.nextInt();
System.out.print("Please input the width:>>>");
int width = Input.nextInt();
System.out.print("Please enter high:>>>");
int high = Input.nextInt(); if( length + width > high && length + high > width && width + high > length){
System.out.println("三边" + length + "," + width + "," + high + "能构成三角形");
}else{
System.out.println("三边" + length + "," + width + "," + high + "不能构成三角形");
} }
}
判断输入的三个数字能够构成三角形
3>.if语句的第三种格式
if(条件表达式1){
语句体1;
}else if(条件表达式2){
语句体2;
}else if(条件表达式3){
语句体3;
}
.......
else{
语句体n;
}
.......//其它语句
接下来,我们一起看一个案例,判断成绩对应的等级,代码如下:
/*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ import java.util.Scanner; public class ExamResults{
public static void main(String[] args){
/*
从键盘输入一个成绩,判断成绩对应的等级。
*/
Scanner Input = new Scanner(System.in);
System.out.print("请输入一个成绩:>>>");
int score = Input.nextInt(); //先对用户输入的成绩进行合理性验证,把不合理的抛去
if( score < 0 || score > 100 ){
System.out.println("你输入的成绩不合理,应该在0~100之间");
return; //返回,结束当前方法main方法的执行。
} //判断成绩对应的等级,如果程序能跑到这,隐性的说明成绩在0~100之间。
if( score >= 90 && score <= 100 ){
System.out.println("优秀!");
}else if( score >= 80 ){
System.out.println("良好!");
}else if( score >= 70 ){
System.out.println("一般!");
}else if( score >= 60 ){
System.out.println("得加油了!");
}else if( score >= 0 ){
System.out.println("不及格!");
} }
}
二.switch语句
1>.语法格式
switch(表达式或变量){
case 取值1:
语句体1;
break;
case 取值2:
语句体2;
break;
…
default:
语句体n+;
break;
}
2>.流程图
3>.案例展示
/*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ import java.util.Scanner; public class WeekJudge{
public static void main(String[] args){
/*
从键盘输入一个1~7之间的数字,输出这个数字对应星期几。
*/ Scanner Input = new Scanner(System.in); System.out.print("请输入一个1~7之间的数字");
int num = Input.nextInt(); String weekday ; //这里声明一个变量是用来保存数字对应的星期几 /**
//用if语句实现:
if( num == 1 ){
weekday = "星期一";
}else if ( num == 2 ){
weekday = "星期二";
}else if ( num == 3 ){
weekday = "星期三";
}else if ( num == 4 ){
weekday = "星期四";
}else if ( num == 5 ){
weekday = "星期五";
}else if ( num == 6 ){
weekday = "星期六";
}else if ( num == 7 ){
weekday = "星期日";
}else {
weekday = "你输入的数字不合法";
}
*/ //用switch语句实现:
switch( num ){
case :
weekday = "星期一";
break;
case :
weekday = "星期二";
break;
case :
weekday = "星期三";
break;
case :
weekday = "星期四";
break;
case :
weekday = "星期五";
break;
case :
weekday = "星期六";
break;
case :
weekday = "星期日";
break;
default:
weekday = "你输入的数字不合法";
}
System.out.println( weekday); }
}
4>.case的穿透
/*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ import java.util.Scanner; public class Quarter{
public static void main(String[] args){
/*
从键盘输入月份数字,显示是第几个季度
*/
Scanner s = new Scanner(System.in);
System.out.print("请输入月份:");
int month = s.nextInt(); switch(month){
case :{}
case :{}
case :{
System.out.println(month + "属于第一季度");
break;
}
case :{}
case :{}
case :{
System.out.println(month + "属于第二季度");
break;
}
case :{}
case :{}
case :{
System.out.println(month + "属于第三季度");
break;
}
case :{}
case :{}
case :{
System.out.println(month + "属于第四季度");
break;
}
default :{
System.out.println("输入的月份有误");
break;
}
} }
}
5>.switch语句注意事项
a>.switch语句表达式的类型有:byte,short,int,char,String(1.7之后才支持)和枚举类型;
b>.case之间与default没有顺序:case相当于入口点,没有匹配的case将执行default,default也不是必须的;
c>.结束switch语句的情况:遇到break或执行到switch语句结束;
d>.如果匹配的case或者default没有对应的break,那么程序会继续向下执行,运行可以执行的语句,直到遇到break或者switch结尾;
e>.case 后面必须跟的是常量表达且各个case常量值不能重复。
三.小试牛刀
1>.计算当前的时间
/*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ import java.util.Scanner; public class CurrentTime{
public static void main(String[] args){
/*
使用System.currentTimeMillis() 计算当前时间;System.currentTimeMillis() 可以
返回当前时间与协调世界时 1970 年 1 月1 日物业之间的时间。
*/ long sumMillis = System.currentTimeMillis(); //把1970.1.1午夜的毫秒数保存到一个变量中 long sumSeconds = sumMillis/1000; //总的秒数 long currentSecond = sumSeconds%60; //当前的秒数 long sumMinutes = sumSeconds / 60; //总的分钟数 long currentMinute = sumMinutes % 60; //当前的分钟数 long sumHours = sumMinutes / 60; //总的小时数 long currentHour = sumHours % 24; //当前的小时数 long beijingHour = (currentHour + 8) % 24; //计算北京的时间,注意,UTC时间和北京时间有时差为8小时。 System.out.println(beijingHour + ":" + currentMinute + ":" + currentSecond); }
}
2>.甲计算两个点的距离
/*
@author :yinzhengjie
Blog:http://www.cnblogs.com/yinzhengjie/tag/Java%E5%9F%BA%E7%A1%80/
EMAIL:y1053419035@qq.com
*/ import java.util.Scanner; public class PointDistance{
public static void main(String[] args){
/*
从键盘上输入两个点的坐标,计算这两个点的距离,Math.pow(a,b)返回a的b次方
*/
Scanner Input = new Scanner(System.in);
System.out.print("请输入第一个点的坐标:>>>");
int x1 = Input.nextInt();
int y1 = Input.nextInt();
System.out.print("请输入第二个点的坐标:>>>");
int x2 = Input.nextInt();
int y2 = Input.nextInt(); int temp = (x1-x2)*(x1-x2) + (y1-y2)*(y1-y2); double distance = Math.pow( temp,0.5 ); System.out.println("这两个点的距离为:" + distance ); }
}
3>.
Java基础-程序流程控制第一弹(分支结构/选择结构)的更多相关文章
- Java基础-程序流程控制第二弹(循环结构)
Java基础-程序流程控制第二弹(循环结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 流程控制有三种基本结构:顺序结构,选择结构和循环结构.一个脚本就是顺序结构执行的,选择结 ...
- Java 基础 程序流程控制 (下)
Java 程序流程控制 (下) 此篇单独对循环结构的知识点进行整理: 之前讲到循环结构分为:for循环,while循环,do...while循环三种最基本的循环结构:在JDK1.5以后的版本还提供了f ...
- Java 基础 程序流程控制 (上)
Java程序流程控制 (上) Java程序大体分为三种流程控制结构:顺序结构.分支结构.循环结构 顺序结构 程序由上到下的逐行执行,中间没有任何跳转和判断语句. 示例代码如下: public clas ...
- 【java从入门到精通】day08-java流程控制-用户交互Scanner--顺序结构--选择结构
1.java流程控制 Scanner对象: Java提供了一个工具类,可以获取用户的输入 java.until.Scanner是Java5的新特征,我们可以通过Scanner类来获取用户的输入 基本语 ...
- Java基础总结--流程控制
Java流程控制* 顺序结构--最常见的执行情况,语句按照出现的先后次序依次执行.* 判断结构--对条件进行判断,执行相应的语句.有三种常见的形式< if(判断条件){语句;}--为真执行语句, ...
- Java基础之流程控制
一.顺序结构 顺序结构的程序语句只能被执行一次.如果您想要同样的操作执行多次,,就需要使用循环结构. if-else-if 语句 语法: if(条件){ 当条件为true时,执行大括号内的代码 }el ...
- Java基础-6流程控制
一).选择控制: 选择控制分为两种:if...else...和switch 单分支结构:这是最简单的一种选择结构,它只是简单的判断某个条件是否成立,如果成立就执行一段代码,语句形式为: if(条件表达 ...
- java之程序流程控制
顺序结构:代码由上至下依次执行: 分支结构: if () { } else{ } if () { } else if () { } else { } switch(常量){ case 常量: 语句; ...
- Java程序流程控制之if-else if-else
java基础之流程控制(一) 流程控制 Flow Control : 流程控制语句是编程语言中的核心之一.可以分为 分支语句.循环语句和跳转语句. 本讲内容包括分支语句 ...
随机推荐
- 作业1MathExam
自己取一个大气又可爱的标题 一.预估与实际 PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟) Planning 计划 720 1000 ...
- 团队冲刺--Seven
昨天: 司宇航:测试功能版块,优化功能版块. 马佳慧:优化界面 . 王金萱:合并程序. 季方: 合并程序. 今天: 司宇航:优化功能版块. 马佳慧:优化界面 . 王金萱:优化界面. 季方: 完善功 ...
- Scrum 项目准备5.0
1.团队成员完成自己认领的任务. 2.燃尽图:理解.设计并画出本次Sprint的燃尽图的理想线.参考图6. 3.每日立会更新任务板上任务完成情况.燃尽图的实际线,分析项目进度是否在正轨. 每天的 ...
- docker删除为<none>的镜像
$ docker stop $(docker ps -a | grep "Exited" | awk '{print $1 }') //停止容器 $ docker rm ...
- 解决win10激活错误代码0xc004c003
打开命令窗口(管理员). win10电脑图解-2 输入slmgr.vbs /upk,回车 激活错误电脑图解-3 输入:slmgr /ipk W269N-WFGWX-YVC9B-4J6C9-T83GX, ...
- [转帖]Kerberos简介
1. Kerberos简介 https://www.cnblogs.com/wukenaihe/p/3732141.html 1.1. 功能 一个安全认证协议 用tickets验证 避免本地保存密码 ...
- [华商韬略] 拉里·埃里森(Larry Elison) 的传奇人生
拉里·埃里森(Larry Elison) 的传奇人生 开战机.玩游艇.盖皇宫,挑战比尔·盖茨,干掉50多家硅谷豪强……全世界比拉里·埃里森更有钱的只有5个,像他这样的硅谷“坏孩子”却是唯一. 19 ...
- vue 组件 单选切换控制模板 v-bind-is
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>T ...
- hdu 1556 Color the ball(树状数组)
链接:http://acm.hdu.edu.cn/showproblem.php?pid=1556 题意:N个气球排成一排,从左到右依次编号为1,2,3....N.每次给定2个整数[a,b]之间的气球 ...
- Java:JUnit4使用详解
对于Junit的总是一知半解不太懂,现在认真梳理一下: 此次针对的是Junit4版本,注解也是在Junit4版本才有的,之前的版本并无注解功能.而注解开发基本上被认为是一种优秀的设计,所以我们写单元测 ...