java 学习笔记(入门篇)_程序流程控制结构和方法

 更新时间:2013年01月03日 10:19:01   投稿:whsnow  
程序流程控制结构分为:顺序、选择、循环以及异常处理结构,语句是程序的基本组成单位,一般来说语句的执行流程是按顺序来进行的,但是当遇到一些特殊的条件,比如循环,这时候语句就会按照流程控制结构来进行了

程序流程控制结构和方法
程序流程控制结构分为:顺序、选择、循环以及异常处理结构。语句是程序的基本组成单位。在java中分简单语句和符合语句,简单语句就是一行代码,例如,privateint3=3;复合语句就是一些简单语句的组合了,例如一个方法等等。一般来说语句的执行流程是按顺序来进行的,但是当遇到一些特殊的条件,比如循环,这时候语句就会按照流程控制结构来进行了。
(1)选择结构
选择结构用于根据不同的条件,实现不同的操作,它提供了一种机制,使得程序根据相应的条件运行对应的语句。java言语实现选择结构有两种形式:一种是两路分支选择的if-else语句,另一种是多分枝选择的switch语句。选择语句需要用到逻辑学里面的东西,但是比较浅显,如命题的真假,是否等。逻辑命题用于逻辑表达式表示,用作两路分支或多路分支结构的逻辑条件。
显然,我们比较关心条件的书写,那这个条件一般有:关系表达式,逻辑表达式和条件运算表达式。
①关系表达式:用关系运算符把两个表达式连接的式子。计算两个同类型表达式的值,然后进行比较,其结果为:真(true)或假(false)。例如:
x%2==0;
x+y>=0;
②逻辑表达式:操作数是逻辑值且用逻辑符连接的表达式的式子成为逻辑表达式,其值仍为逻辑值。例如:
x>6&&y<3;
x>6||y>8;
y%4==0&&y%100!=0&&y%400==0//y是闰年条件
③条件运算表达式:由三目运算符连接起来的表达式,语法格式为:(逻辑表达式)?(表达式1):(表达式2)。当逻辑表达式的值为真时,返回表达式1的值,否则,返回表达式2的值。
(2)if-else语句
一般的if-else语句是这样的,

复制代码 代码如下:

if(逻辑表达式){或if(逻辑表达式)语句1;
语句1;[else语句2;]
}else{
语句2;
}

if语句是专门用来实现选择结构的语句,它根据逻辑条件中的真假来决定运行两种操作中的一种。例如:闰年的条件是:能被4整除但又不能被100整除,或正被400整除的公元年。所以,闰年的判断可以用一个逻辑表达式表示。
下面来判断2012年是否为闰年:
复制代码 代码如下:

publicclassIsLeapYear{
publicstaticvoidmain(Stringargs[]){
intyear=2012;
booleanleapYear=(year%4==0&&year%100!=0||year%400==0);
if(leapYear){
System.out.println(year+"是闰年");
}else{
System.out.println(year+"不是闰年");
}
}
}

if-else语句的嵌套:
在if-else语句中的语句1或语句2中的语句也可以是if-else语句,这样就形成了if-else语句的嵌套。其中最常用的是elseif语句嵌套的多选择结构:
复制代码 代码如下:

if()语句1
elseif(逻辑表达式)语句2
........
elseif(逻辑表达式)语句n
else语句n+1

程序运行时会从上至下判断逻辑条件,一旦某个逻辑条件满足(即布尔表达式的值为真),则运行相应的语句,然后就不再判断其他的条件,直接转到结构出口,运行if语句的后续语句。当然在这种多选择的结构中,比较容易犯混淆if与else之间的搭配关系。java语言规定:else总是与离它最近的if配对。如果需要可以用花括号{}来改变配对关系,其实我们经常这样做。

相关文章

  • SpringCloud Config统一配置中心问题分析解决与客户端动态刷新实现

    SpringCloud Config统一配置中心问题分析解决与客户端动态刷新实现

    springcloud config是一个解决分布式系统的配置管理方案。它包含了 client和server两个部分,server端提供配置文件的存储、以接口的形式将配置文件的内容提供出去,client端通过接口获取数据、并依据此数据初始化自己的应用
    2022-10-10
  • Java读取文件方法汇总

    Java读取文件方法汇总

    这篇文章主要为大家详细介绍了Java读取文件方法,按字节读取文件内容、按字符读取文件内容、随机读取文件内容等,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • 两万字详解Java Sring String的常见操作以及StringBuffer StringBuilder的区别

    两万字详解Java Sring String的常见操作以及StringBuffer StringBuilder的区别

    本篇文章带你认识Sring、String的常见操作和StringBuffer 与StringBuilder的区别(字符串详解),对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • Springboot 跨域配置无效及接口访问报错的解决方法

    Springboot 跨域配置无效及接口访问报错的解决方法

    这篇文章主要介绍了Springboot 跨域配置无效及接口访问报错的解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • Java中类的定义与实例化详解

    Java中类的定义与实例化详解

    这篇文章主要给大家介绍了关于Java中类的定义与实例化的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Java具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-11-11
  • Springboot详解底层启动过程

    Springboot详解底层启动过程

    这篇文章主要介绍了SpringBoot启动过程的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • 浅析Java数据库操作工具包jOOQ的使用

    浅析Java数据库操作工具包jOOQ的使用

    jOOQ 是一个轻量级的 Java ORM(对象关系映射)框架,可用来构建复杂的 SQL 查询,这篇文章主要来和大家介绍一下jOOQ的使用,需要的可以参考下
    2024-04-04
  • Java多态性定义与用法实例详解

    Java多态性定义与用法实例详解

    这篇文章主要介绍了Java多态性定义与用法,较为详细的分析了多态的概念、功能以及java定义与实现面向对象多态性的相关操作技巧,需要的朋友可以参考下
    2017-09-09
  • RabbitMQ中的延迟队列机制详解

    RabbitMQ中的延迟队列机制详解

    这篇文章主要介绍了RabbitMQ中的延迟队列机制详解,延时队列内部是有序的,最重要的特性就体现在它的延时属性上,延时队列中的元素是希望,在指定时间到了以后或之前取出和处理,简单来说,延时队列就是用来存放需要在指定时间被处理的元素的队列,需要的朋友可以参考下
    2023-09-09
  • java instanceof操作符使用及原理解析

    java instanceof操作符使用及原理解析

    这篇文章主要介绍了java instanceof操作符使用及原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12

最新评论