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 ...
随机推荐
- Java工程(3)——但从谈论用户的角度UI图案
前言: 海南项目宣告竣工,验收之日,除部分代码有待优化外,亟待改进的就是界面. 米老师说:连你都忍不住去拖下滚动栏,你还指望用户用的舒坦吗? 顿悟: 业务.功能也许是软件的核心,技术也许是软件的精髓. ...
- Swift学习——Swift解释特定的基础(七)
Implicitly Unwrapped Optionals 隐式解析选项 如上所述.可选意味着常数或变量"没有值".通过可选if声明来推断是否存在值,假设有值析值. 有时候 ...
- Building a RESTful Web Service(转)
Building a RESTful Web Service This guide walks you through the process of creating a "hello wo ...
- rabbitMQ说明文档
rabbitMQ是什么 RabbitMQ 是由 LShift 提供的一个 Advanced Message Queuing Protocol (AMQP) 的开 ...
- 网络资源(8) - JAX-RS视频
2014_08_25 http://v.youku.com/v_show/id_XNjAzMzA4MTY0.html JAX-RS 2.0 RESTful Java on Steroids, by A ...
- Linq入门演练---(2)lambda表达式
今天大家一同学习下lambda表达式, lambda表达式使用起来更方便, lambda表达式其实是一个匿名函数,使用的运算符为=> 语法: (参数)=>表达式 如果只有一个参数,可以不使 ...
- The Stern-Brocot Number System(排序二进制)
The Stern-Brocot Number System Input: standard input Output: standard output The Stern-Brocot tree i ...
- Android Application.java以及它的作用
What is Application Application和Activity,Service一样是android框架的一个系统组件,当android程序启动时系统会创建一个 application ...
- Cocos2d-x之MenuItem
***************************************转载请注明出处:http://blog.csdn.net/lttree************************** ...
- 教你一步一步部署.net免费空间OpenShift系列之一------帐号注册和验证
前几天有博友发布了一篇文章<一键部署mono 免费空间支持ASP.NET MVC 再也不担心伙食费换空间了>,支持MVC3和域名绑定,觉得不错,于是自己实践了一下,发现自己实际遇到的问题真 ...