java(3) if结构
一、基本if结构
1、流程图
1)输入输出
2)判断和分支
3) 流程线
1.1 简单的if条件判断
if(表达式){
//表达式为true,执行{}中的代码
}
示例1:如果张三的Java成绩大于98分,那么老师奖励他一个MP4。
public class Practice1 {
public static void main(String[] args){
//从控制台输入张三的成绩
Scanner input = new Scanner(System.in);
System.out.print("请输入张三的JAVA成绩:");
int score = input.nextInt();
if( score >98){
System.out.println("老师说:不错,奖励一个MP4!");
}
}
}
if结构
运行结果,如图:
1)实现条件成立的运行结果

2)条件不成立的运行结果

1.2 简单的if条件判断
if(表达式){
//表达式为true,执行这里
}else{
//表达式为false,这行这里
}
示例2:如果张三的Java成绩大于98分,那么老师奖励他一个MP4;否则老师罚他抄试卷。
public class Practice2 {
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.print("请输入张三的JAVA成绩:");
int score = input.nextInt();
if(score >98){
System.out.println("老师说:不错,奖励一个MP4!");
}else{
System.out.println("老师说:罚抄试卷");
}
}
}
if-else结构
运行结果,如图:
1)实现条件成立的运行结果

2)实现条件不成立的运行结果

说明:如果if或else后面,有且仅有一行代码,{ }可以省略,但不建议省略
二、逻辑运算符
a. && 逻辑与(按shift+7)——且(并且、同时)
多个条件中,1个为假,if ( )中全部为假,多个条件同时为真,if()中则为真
b. || (按shift+回车键上面的|)——或(或者)多个条件中,只要1个为真,if()全部为真
c. !(英文状态下)——取反 例如:不等于 为 !=
1)判断字符串是否相等
A、区分大小写:密码
字符串变量.equals(字符串的值或字符串变量)
B、不区分大小写:验证码
字符串变量.equalsIgnoreCase(字符串的值或字符串变量)
2)如何分解个位、十位、百位、千位上的数字?【P47】
Int 个位 = 数字 % 10 //分解获得个位数
Int 十位 = 数字 /10 % 10 //分解获得十位数
Int 百位 = 数字 /100 % 10 //分解获得百位数
Int 千位 = 数字 /1000 % 10 //分解获得千位数
三、多重if结构
if(条件1){
//代码块
}else if(条件2){
//代码块
}else if(条件n){
//代码块
} else{
//代码块
}
示例3:小明同学参加了Java课程的学习,她的爸妈承认诺:
1)如果考试成绩等于100分,父亲给她买一辆车
2)如果考试成绩>=90分,母亲给她买一台笔记本电脑
3)如果考试成绩>=60分,母亲给她买一台手机
4)如果考试成绩<60分,扣掉一个星期的生活费
public class Practice3 {
public static void main(String[] args){
Scanner input = new Scanner(System.in);
System.out.println("请输入分数:");
int score= input.nextInt();
if(score== 100){
System.out.println("父亲给她买辆车");
}else if(score>= 90){
System.out.println("母亲给她买一台笔记本电脑");
}else if(score>=60){
System.out.println("母亲给她买一台手机");
}else{
System.out.println("扣掉一个星期的生活费");
}
}
}
多重if选择结构
运行结果,如图(依次按顺序来):




说明:else if可以有多个,对数字范围有顺序要求
在If中输入字符串——if(变量名.equals(“字符串”)){ }
四、嵌套if结构
if(条件1){
//代码块
i f (条件1-1){
}
说明:该if结构可以为if、if...else、多重if等结构
} else{
可以为if、if...else、多重if等结构
}
示例4:学校举行运动会,百米赛跑成绩在10秒内的学生有资格进决赛,根据性别分男子组和女子组。
public class Practice4 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入比赛成绩(s):");
double score = input.nextDouble();
System.out.print("请输入性别");
String gender = input.next();
if(score<=10){
if(gender.equals("男")){
System.out.println("进入男子组决赛");
}else if(gender.equals("女")){
System.out.println("进入女子组决赛");
}
}else{
System.out.println("淘汰");
}
}
}
嵌套if结构
运行结果,如图:
1.
2. 
3.
4. 
5.
6.
说明:1.只有当满足外层if选择结构的条件时,才会判断内层if的条件
2.else总是与它前面最近的那个缺少else的if配对
注意:if结构的书写规范:
--> 为了使if结构更清晰,应该把每个if或else包含的代码块用大括号括起来。
--> 相匹配的一对if和else应该左对齐
--> 内层的if结构相对于外层的if结构要有一定的缩进
java(3) if结构的更多相关文章
- [Java基础]循环结构3
[Java基础]循环结构3 break 与 continue 中断循环... /** 文件路径:G:\JavaByHands\循环语句\ 文件名称:BreakTest.java 编写时间:2016/6 ...
- [java基础]循环结构2
[java基础]循环结构2 写了几个循环结构练习~记录一下~~ 1:99乘法表 /** 文件路径:G:\JavaByHands\循环语句\ 文件名称:GameForFor.java 编写时间:2016 ...
- [java基础]循环结构1
[java基础]循环结构1 循环结构:for循环,while循环,do_while循环在,增强型for循环 /** 文件路径:G:\JavaByHands\循环语句\ 文件名称:WhileTest.j ...
- [java基础]分支结构(2)
[java基础]分支结构2 switch case /** 文件路径:G:\JavaByHands\if-else\ 文件名称:switchcase.java 编写时间:2016/6/6 作 者:郑晨 ...
- paip.提升性能----java 无锁结构(CAS, Atomic, Threadlocal, volatile, 函数式编码, 不变对象)
paip.提升性能----java 无锁结构(CAS, Atomic, Threadlocal, volatile, 函数式编码, 不变对象) 1 锁的缺点 2 CAS(Compare ...
- Java程序猿从笨鸟到菜鸟之(九十二)深入java虚拟机(一)——java虚拟机底层结构具体解释
本文来自:曹胜欢博客专栏.转载请注明出处:http://blog.csdn.net/csh624366188 在曾经的博客里面,我们介绍了在java领域中大部分的知识点,从最基础的java最基本的语法 ...
- Java Web项目结构
Java Web项目结构(一般) 1.Java src 2.JRE System Library 3.Java EE 6 Libraries 4.Web App Libraries 5.WebRoot ...
- java实现堆结构
一.前言 之前用java实现堆结构,一直用的优先队列,但是在实际的面试中,可能会要求用数组实现,所以还是用java老老实实的实现一遍堆结构吧. 二.概念 堆,有两种形式,一种是大根堆,另一种是小根堆. ...
- JVM基础系列第6讲:Java 虚拟机内存结构
看到这里,我相信大家对于一个 Java 源文件是如何变成字节码文件,以及字节码文件的含义已经非常清楚了.那么接下来就是让 Java 虚拟机运行字节码文件,从而得出我们最终想要的结果了.在这个过程中,J ...
- java中的数据类型,运算符,字符串,输入输出,控制流,大数值,数组; 《java核心技术卷i》 第三章:java基本程序结构;
<java核心技术卷i> 第三章:java基本程序结构: 每次看书,去总结的时候,总会发现一些新的东西,这次对于java的数组有了更深的了解: java中的数据类型,运算符,字符串,输入输 ...
随机推荐
- [Java自学第二天]
Java封装性思想的初步理解 从项目需求的角度出发,建立各个模块化的类,各个模块暂时不需要具体的方法描述,只需要各个模块的理想到位. 以银行项目为例 初步设想需要三个模块:银行(Bank类).客户(C ...
- ue4构建光照失败问题与解决
不知从哪天开始,我的ue4.13就突然无法成功构建光照了, 症状为:虽然swarm连接到了100%,然而之后就卡住一动不动,一看看log是连接tcp什么agent什么失败的. 虽然把所有物体都设置成非 ...
- CF CROC 2016 Intellectual Inquiry
题目链接:http://codeforces.com/contest/655/problem/E 大意是Bessie只会英文字母表中的前k种字母,现在有一个长度为m+n的字母序列,Bessie已经知道 ...
- oh-my-zsh 安装和使用
oh-my-zsh是github用户robbyrussell的一款为简化zsh配置而开发的开源项目. 其github地址:https://github.com/robbyrussell/oh-my-z ...
- Java 设计模式(四)-工厂方法模式 (FactoryMethod Pattern)
1 概念定义 1.1 定义 定义一个用于创建对象的接口,让子类决定实例化哪一个类.工厂方法使一个类的实例化延迟到其子类. 1.2 类型 创建类模式 2 原理特征 2.1 类 ...
- ArrayList 进阶方法之ListIterator
同样看的都是jdk1.8 中 ArrayList中的源码,整理测试一下而已ListIterator(int index)方法,返回指定下标(包含该下标)后的值,此时index位置的元素就是新列表迭代器 ...
- 天方夜谈·数据结构·Queue
"我在想Y的时候不能想X....." 什么叫做Queue(队列)?"队列是项的集合,对于每一项x和y,如果x在y之前离开对头,那么x一定在y之前进入队列--Sesh·Ve ...
- bzoj3112 [Zjoi2013]防守战线
正解:线性规划. 直接套单纯形的板子,因为所约束条件都是>=号,且目标函数为最小值,所以考虑对偶转换,转置一下原矩阵就好了. //It is made by wfj_2048~ #include ...
- string 学习
#include <string> 1.取当中某个字符 与传统一样 c[11]="0123456789"; c[1]=1; ps:好慢 .. 会不会GG... #inc ...
- struts2标签库----控制标签详解
前面几篇文章我们介绍了有关struts2的基本内容,简单理解了整个框架的运作流程.从本篇开始我们逐渐了解和使用struts2为我们提供的标签库技术,使用这些标签可以大大降低我们表现层的开发难 ...