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

 更新时间:2013年01月03日 10:19:01   作者:  
程序流程控制结构分为:顺序、选择、循环以及异常处理结构,语句是程序的基本组成单位,一般来说语句的执行流程是按顺序来进行的,但是当遇到一些特殊的条件,比如循环,这时候语句就会按照流程控制结构来进行了
程序流程控制结构和方法
程序流程控制结构分为:顺序、选择、循环以及异常处理结构。语句是程序的基本组成单位。在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配对。如果需要可以用花括号{}来改变配对关系,其实我们经常这样做。

相关文章

  • Java多线程实现方块赛跑小游戏

    Java多线程实现方块赛跑小游戏

    这篇文章主要为大家详细介绍了Java多线程实现方块赛跑小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-07-07
  • Mybatis中updateBatch实现批量更新

    Mybatis中updateBatch实现批量更新

    本文主要介绍了Mybatis中updateBatch实现批量更新,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • java设计模式之简单工厂模式

    java设计模式之简单工厂模式

    这篇文章主要为大家详细介绍了java设计模式之简单工厂模式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-12-12
  • HashMap确定key的存储位置的源码分析

    HashMap确定key的存储位置的源码分析

    HashMap 作为 Java 中最常用的数据结构之一,用于存储和管理键值对,HashMap 基于哈希函数实现,能通过将 key 映射到特定的位置来实现快速存储、查找和删除数据,接下来将从源码角度分析以通俗易懂的方式向大家讲解一下 HashMap 如何确定 key 的存储位置的
    2023-07-07
  • 使用FeignClient设置动态Url

    使用FeignClient设置动态Url

    这篇文章主要介绍了使用FeignClient设置动态Url方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • java实现汉字转unicode与汉字转16进制实例

    java实现汉字转unicode与汉字转16进制实例

    这篇文章主要介绍了java实现汉字转unicode与汉字转16进制的实现方法,是Java操作汉字编码转换的一个典型应用,非常具有实用价值,需要的朋友可以参考下
    2014-10-10
  • 关于Spring Boot项目的 log4j2 核弹漏洞问题(一行代码配置搞定)

    关于Spring Boot项目的 log4j2 核弹漏洞问题(一行代码配置搞定)

    相信昨天,很多小伙伴都因为Log4j2的史诗级漏洞忙翻了吧,不过我看到群里发出来的各种修复方法,还真是不好看...所以这里也提一下Spring Boot用户怎么修复最简单吧,对Spring Boot log4j2 核弹漏洞问题感兴趣的朋友参考下吧
    2021-12-12
  • java非公平锁知识点实例详解

    java非公平锁知识点实例详解

    在本篇文章里小编给大家整理了一篇关于java非公平锁知识点实例详解,有兴趣的朋友们可以学习参考下。
    2021-10-10
  • 在SpringBoot中配置Thymeleaf的模板路径方式

    在SpringBoot中配置Thymeleaf的模板路径方式

    这篇文章主要介绍了在SpringBoot中配置Thymeleaf的模板路径方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • sql查询返回值使用map封装多个key和value实例

    sql查询返回值使用map封装多个key和value实例

    这篇文章主要介绍了sql查询返回值使用map封装多个key和value实例,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07

最新评论