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 : 流程控制语句是编程语言中的核心之一.可以分为 分支语句.循环语句和跳转语句. 本讲内容包括分支语句 ...
随机推荐
- 20135313-exp1
北京电子科技学院(BESTI) 实 验 报 告 课程:Java程序设计 班级:1353 姓名:吴子怡 学号:20135313 成绩: 指导教师:娄嘉鹏 实 ...
- Java未赋值变量的默认初始值
在 Java 程序中,任何变量都必须经初始化后才能被使用.当一个对象被创建时,实例变量在分配内存空间时按程序员指定的初始化值赋值,否则系统将按下列默认值进行初始化: 数据类型 初始值 byte 0 s ...
- 【贪心算法】POJ-3040 局部最优到全局最优
一.题目 Description As a reward for record milk production, Farmer John has decided to start paying Bes ...
- BETA-1
前言 我们居然又冲刺了·一 团队代码管理github 站立会议 队名:PMS 530雨勤(组长) 过去两天完成了哪些任务 发现之前的代码居然已经有了陌生感,默默地复习一遍并做注释 阅读关于基于视频的车 ...
- Java集合技巧
集合的一些技巧: 需要唯一吗? 需要:Set 需要制定顺序: 需要: TreeSet 不需要:HashSet 但是想要一个和存储一致的顺序(有序):LinkedHashSet 不需要:List ...
- java类和对象
类是对象的抽象 对象是类的一个实例类 对象 = new 类();拿对象可以操作这个类里的方法 java类与对象的区别是个老生常谈的问题,刚开始学java的时候就开始接触类和对象,今天来总结一下他们之间 ...
- 我的虚拟机中的 centOS 连不了网了
网上的办法试过了,查看虚拟机的网络配置,是 NET的, 也 cd 到/etc/sysconfig/network-script/ifcfg-eth0 里面看了,onboot 本来就是 yes,要不然我 ...
- how to disabled iframe page open new window / new tab
how to disabled iframe page open new window / new tab 禁用 iframe 中的页面打开新页面 <!DOCTYPE html> < ...
- UVAlive5135_Mining Your Own Business
好题.给一个无向图,求最少染黑多少个点后,使得任意删除一个点,每一个点都有与至少一个黑点联通. 一开始的确不知道做.看白书,对于一个联通分量,如果它有两个或以上的割点,那么这个分量中间的任何一个点都是 ...
- CF271D_Good Substrings
给一个原串,以及那些字符是坏的,现在问你可以从原串中取出多少个不同子串,使得其所含的坏字符的个数不超过一个定数. 这个题目网上有各种各样的解法.如hash,tire. 我说一下我的解法. 解法一:后缀 ...