java入门学习(十二)运算语句 if switch
这两天在网上做兼职,耽误了些博客见谅哈 欢迎来我的博客:www.taomaipin.com
java中的运算语句而且频繁用到的无法就是条件语句和循环语句,包括if,for,while,switch,break,continue,接下来我会一一介绍这些运算
语句的用法。
第一:if语句(也就是条件语句)
在我们日常生活中,如果去做一件事,有好多的条件并不是一个条件,比如我去北京,我可以坐火车,乘飞机,坐汽车这三个条件,在java的if语句
中,为了避免多写if语句就产生了一个多分枝语句 if–else else –if。
首先咱们看看if语句的格式
if(条件){
功能代码
}else{
工能代码
}
比如上面的去北京的条件,假如火车,飞机,汽车三个条件那么分别声明三个条件的变量
如下代码
public class Test7 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
boolean huoche=true;
boolean feiji=true;
boolean qiche=true;
if(huoche){
System.out.println(“我成火车去北京”);
}else{
System.out.println(“我没有成火车去北京”);
}
if(feiji){
System.out.println(“我成飞机去北京”);
}else{
System.out.println(“我没有成飞机去北京”);
}
if(qiche){
System.out.println(“我成汽车去北京”);
}else{
System.out.println(“我没有成汽车去北京”);
}
}
}
if语句中括号里面的变量值必须是boolean型的true或false,比如声明一个变量a=1,if(a){} 这样写是错误的,而如果是if(a==1){}就是对的
因为a=1返回值是booelan值true
其实上面代码可以用java的多分支语句来写而不是每次多条件 就要大量写if if if看下面代码:
public class Test7 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
boolean huoche=true;
boolean feiji=true;
boolean qiche=true;
if(huoche){
System.out.println(“我成火车去北京”);
}else if(feiji){
System.out.println(“我成飞机去北京”);
}else if(qiche){
System.out.println(“我成汽车去北京”);
}
}
}
上面所述的两个例子代码效果是一样的是不是第二个例子看起来更简洁些。
i上面的第一个例子代码可以吧else{}去掉,如果else{}里面不是语句块 没有功能代码或者业务逻辑处理那么就可以去掉它。
再来看一个示例代码,该代码的功能是实现将百分制的成绩转换为A、B、C、D和E,代码如下:
int score = 87;
if(score >= 90){
System.out.println(‘A’);
} else if(score >= 80){
System.out.println(‘B’);
} else if(score >= 70){
System.out.println(‘C’);
} else if(score >= 60){
System.out.println(‘D’);
} else{
System.out.println(‘E’);
}
从该代码中可知,每个else if语句在书写时是有顺序的,在实际书写时,必须按照逻辑上的顺序进行书写,否则将出现逻辑错误。
if-else else-if语句是Java语言中提供的一个多分支条件语句,但是在判断某些问题时,会书写的比较麻烦,所以在语法中提供了另外一个语句
——switch语句来更好的实现多分支语句的判别。
第二:switch语句
说到这个语句 就不能不说break,使用break意思是可以立刻终止程序往下运行,跳出当前程序进行后面的语句
switch的语法是:
switch(表达式)
{
case 常量表达式1:语句1;
....
case 常量表达式2:语句2;
default:语句;
} default就是如果没有符合的case就执行它,default并不是必须的. case后的语句可以不用大括号. switch语句的判断条件可以接受int,byte,char,short,不能接受其他类型. 如下代码
public class Test7 {
/**
* @param args
*/
public static void main(String[] args) {
int x = 1;
switch (x)
{
case 1:
System.out.println(“1″);
break;
case 2:
System.out.println(“2″);
break;
case 3:
System.out.println(“3″);
break;
}
}
打印结果是:1
如果用if语句来实现上面的效果那么必须这样写:如下代码:
public class Test7 {
/**
* @param args
*/
public static void main(String[] args) {
int x = 1;
if(x==1){
System.out.println(“1″);
}else if(x==2){
System.out.println(“2″);
}else if(x==3){
System.out.println(“3″);
}
}
}
打印结果:1
所以 一但条件很多一般 都用switch语句来实现功能。
欢迎来我的博客:www.taomaipin.com
java入门学习(十二)运算语句 if switch的更多相关文章
- java web 学习十二(session)
一.Session简单介绍 在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意:一个浏览器独占一个session对象(默认情况下).因此,在需要保存用户数据时,服务 ...
- JAVA多线程学习十二 - Semaphere同步工具
java 中Semaphere可类比操作系统信号量,硬件资源如IO.内存.磁盘等都是有固定量的,多个程序需要竞争这些资源,没有资源就需要被挂起. 一.类和方法摘要 构造函数: public Semap ...
- Java入门教程十二(集合与泛型)
在 Java 中数组的长度是不可修改的.然而在实际应用的很多情况下,无法确定数据数量.这些数据不适合使用数组来保存,这时候就需要使用集合. Java 的集合就像一个容器,用来存储 Java 类的对象. ...
- Java开发学习(十二)----基于注解开发依赖注入
Spring为了使用注解简化开发,并没有提供构造函数注入.setter注入对应的注解,只提供了自动装配的注解实现. 1.环境准备 首先准备环境: 创建一个Maven项目 pom.xml添加Spring ...
- “全栈2019”Java异常第二十二章:try-with-resources语句详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...
- 201871010106-丁宣元 《面向对象程序设计(java)》第十二周学习总结
201871010106-丁宣元 <面向对象程序设计(java)>第十二周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nw ...
- Java Web入门学习(二) Eclipse的配置
Java Web学习(二) Eclipse的配置 一.下载Eclipse 1.进入Eclipse官网,进行下载 上图,下载Eclipse IDE for JaveEE Developers 版本,然后 ...
- MyBatis基础入门《十二》删除数据 - @Param参数
MyBatis基础入门<十二>删除数据 - @Param参数 描述: 删除数据,这里使用了@Param这个注解,其实在代码中,不使用这个注解也可以的.只是为了学习这个@Param注解,为此 ...
- Java多线程学习(二)synchronized关键字(2)
转载请备注地址:https://blog.csdn.net/qq_34337272/article/details/79670775 系列文章传送门: Java多线程学习(一)Java多线程入门 Ja ...
随机推荐
- IIS7安装场景对照表
原文 IIS7安装场景对照表 Default Server Install Components Server Manager Update Name Static Content IIS-Stati ...
- jQuery语音播放插件
自己做jQuery插件:将audio5js封装成jQuery语音播放插件 日前的一个项目需要用到语音播放功能.发现Audio5js符合需求且使用简单,又鉴于jQuery控件便于开发操作,于是有了以 ...
- zoj 2402 - Lenny's Lucky Lotto Lists
称号:序列,在前面的每个元件的至少两倍,最大值至n.问:长l船舶有许多这样的. 分析:dp,LIS类别似事. 状态:f(i,j)结束数字为j且长度为i的序列的个数.有转移方程: F[ i ][ j ] ...
- JS脚本显示当前日期+星期几[转]
以下的代码提供了显示当前日期和星期几的实现方法: function writeDateInfo() { var day=""; var month= ...
- java流下载
@RequestMapping("/pluginDownload") public void pluginDownload(HttpServletResponse response ...
- Visio Premium 2010钥匙+激活破解方法
Visio Premium 2010钥匙+激活破解方法: 安装时能够使用的关键: GR24B-GC2XY-KRXRG-2TRJJ-4X7DC VWQ6G-37WBG-J7DJP-CY66Y-V278X ...
- UML之轻松入门(2)-掌握Junit,让我们的开发更高效
使用UML不仅能够形象化的表达我们的程序思想,并且能够帮助我们提高程序的质量.一个杂乱无章的程序让维护者望而生畏,其成本也可想而知.在面向程序设计(OOD)中有5条原则是帮助我们设计一个高效 ...
- HDU 1080 Human Gene Functions--DP--(变形最长公共子)
意甲冠军:该基因序列的两端相匹配,四种不同的核苷酸TCGA有不同的分值匹配.例如T-G比分是-2,它也可以被加入到空格,空洞格并且还具有一个相应的核苷酸匹配分值,求最大比分 分析: 在空气中的困难格的 ...
- javascript继承—继承的实现原理(1)
原文:javascript继承-继承的实现原理(1) 打算针对js的继承写一系列文章,详细的分析js里继承原理,实现方式,各种继承方式的优缺点,以及最优继承方案,还有多继承的问题等…. 面向对象的编程 ...
- 自由软件之父、Google+设计者、Java之父、Linux之父、万维网之父、Vi编辑器之父、苹果Lisa电脑界面设计、微软首席软件架构师
自由软件之父.Google+设计者.Java之父.Linux之父.万维网之父.Vi编辑器之父.苹果Lisa电脑界面设计.微软首席软件架构师 理查德·斯托曼(Richard Stallman) 理查德· ...