Java中的程序流程控制

Java中的程序流程分为三种结构:①顺序结构;②分支结构;③循环结构

一.顺序结构

  Java中定义成员变量的时候,采用的是前向引用,也就是后面的变量可以引用之前定义好的变量。

public class FlowControl {
public static void main(String[] args) {
// 正确引用
int num1 = 10;
int num2 = 5+ num1; //错误引用
/*
int num4 =num3 + num2;
int num3 =9;
*/
}
}

二.分支结构

  分支语句1:if-else

   if语句的三种格式

public class IfTest {
public static void main(String[] args) {
int i = 10;
//第一种方式
if(i==10) {
System.out.println("i小于10");
}
//第二种
if(i>10) {
System.out.println("i大于10");
}else {
System.out.println(i);
}
//第三种
if(i<10) {
System.out.println("i小于10");
}else if (i>10) {
System.out.println("i大于10");
}else {
System.out.println("i等于10");
}
}
}

注意 :请思考一下,一下代码的执行结果

public class IfTest {
public static void main(String[] args) {
int x = 4;
int y = 1;
if(x>2) { if(y>1)
System.out.println(y);
System.out.println(x+y); }else {
System.out.println("x is"+x);
}
}
}

二.switch分支结构

  switch结构表达式

 /**
*switch语法
*switch(表达式) {
* case 常量1:
* 语句;
* break;
* case 常量2:
* 语句;
* break;
* ......
* case 常量n;
* 语句;
* break;
* default:
* 语句;
* berak:
*}
*
*
*/
public class SwitchTest {
public static void main(String[] args) { int i =2;
switch(i) {
case 1:
System.out.println("一年级");
break;
case 2:
System.out.println("二年级");
break;
case 3:
System.out.println("三年级");
break;
default:
System.out.println("校长");
break; }
}
}

switch语句中应该注意的东西:

switch表达式中支持的返回值类型:byte,short,int,枚举,char,string;

case子句必须是常量;且所有case子句的执行逻辑应该是不相同的。

default子句是可以选择的,没有匹配的case子句时会默认匹配default子句中的值。

在switch语句中,应该每一个case中都应该由跳出逻辑,应当由break语句;如果没有break语句,程序会顺序执行到switch结尾。

三.循环结构

一. 首先我们来了解一下循环语句的四个组成部分:

  1. 初始化部分  
  2. 循环条件部分
  3. 循环体部分
  4. 迭代部分

二. 循环语句分类:for循环,while循环,do/while循环

  首先,我们来看for循环。

  for循环的语法格式:for(初始化值①;布尔值测试②;更改表达式④){

  语句或者语句块③;

}

图例(图是从别的地方抠来的.....):

  while循环语法格式

  初始化语句;

  whlie(条件){

  语句;

}

示例代码:

 public class WhileTest {
public static void main(String[] args) {
int result =0;
int i=1;
while(i<=10) {
result=result+i;
i++;
System.out.println("result:"+result);
}
} }

do-while循环语句

  语法格式:

    初始化语句

    do{

    语句或者语句块

  }while(布尔测试值)

示例代码:

 public class DoWhileTest2 {
public static void main(String[] args) {
int result =0;
int i=1;
do {
result=result+i;
i++;
System.out.println("result:"+result);
}while(i<10);
} }

除了这三种流程语句,我们还有一些特殊的流程控制语句,比如break语句,continue语句;return语句;都可以控制程序流程,这些语句将会在之后做一些总结。

Java基础之程序流程控制的更多相关文章

  1. Java基础语法(4)-流程控制

    title: Java基础语法(4)-流程控制 blog: CSDN data: Java学习路线及视频 1.程序流程控制 流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定 ...

  2. Java基础语法与流程控制

    Java基础语法与流程控制 跟着狂神学Java的第二天O(∩_∩)O~,养成一个总结的习惯 志同道合的小伙伴可以一起学习狂神的视频 本节地址:https://www.kuangstudy.com/co ...

  3. Java基础语法02——流程控制

    流程控制:顺序结构.分支结构(if-else.switch-case).循环结构(for.while.do-while)

  4. Java基本语法--程序流程控制

    流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块.流程控制方式采用结构化程序设计中规定的三种基本流程结构,即:顺序结构.分支结构.循环结构.本篇博客主要是对 ...

  5. 《Java基础知识》流程控制

    流程控制分类: 一.顺序结构如果没有流程控制(即没有分支结构和循环结构),Java方法里面的语句是一个顺序执行流,从上到下依次执行每条语句. 二.分支结构1.if语句if语句使用布尔表达式或者布尔值作 ...

  6. java 基础知识四 流程控制

    java   基础知识四 流程控制 Java流程控制包括顺序控制.条件控制和循环控制 顺序控制就是逐条执行 有if和switch两个分支 循环控制就是 又称为回路控制,根据循环初始条件和终结要求,执行 ...

  7. Java笔记(六)……程序流程控制

    判断结构 三种结构: 1: if(条件表达式) 2: { 3: 执行语句; 4: } 5:  6: if(条件表达式) 7: { 8: 执行语句; 9: } 10: else 11: { 12: 执行 ...

  8. Java基础教程(9)--流程控制

    一.分支结构 1.if语句   if语句会与其后的第一条语句或代码块结合,且只有当判断条件为true时才执行语句或代码块.例如,自行车只有在运动的时候才可以减速,就像下面这样: void applyB ...

  9. Java学习day4 程序流程控制一

    一.分支结构 条件语句:if...else if语句: 一个 if 语句包含一个布尔表达式和一条或多条语句,如果布尔表达式的值为 true,则执行 if 语句中的代码块,否则执行 if 语句块后面的代 ...

随机推荐

  1. ELK学习笔记(三)单台服务器多节点部署

    一般情况下单台服务器只会部署一个ElasticSearch node,但是在学习过程中,很多情况下会需要实现ElasticSearch的分布式效果,所以需要启动多个节点,但是学习开发环境(不想开多个虚 ...

  2. 面试长谈的String,StringBuffer,StringBuilder三兄弟有啥区别

    1.String: /** Strings are constant; their values cannot be changed after they * are created. String ...

  3. linux --> Linux 的启动流程

    Linux 的启动流程 操作系统接管硬件以后发生的事情,也就是操作系统的启动流程. 因为在BIOS阶段,计算机的行为基本上被写死了,程序员可以做的事情并不多:但一旦进入操作系统,程序员几乎可以定制所有 ...

  4. 设计模式 --> (17)状态模式

    状态模式 允许一个对象在其内部状态改变时改变它的行为.对象看起来似乎修改了它的类.它有两种使用情况: (1)一个对象的行为取决于它的状态, 并且它必须在运行时刻根据状态改变它的行为. (2)一个操作中 ...

  5. jmeter连接Mysql数据库测试性能初探

    Jmeter mysql性能测试演示 1.  Jmeter是java开发的,jmeter连接mysql数据库当然需要jdbc驱动,这个可以在网上下载mysql-connector-java包,然后解压 ...

  6. python+selenium:解决上传文件<input type='file'>标签属性被css的visibility隐藏导致无法定位元素的问题

    要想上传文件,需要找到在HTML中<input type="file" />这个标签,有它就可以利用send_keys上传文件,不过这里的<input>元素 ...

  7. 20162302 实验四《Android程序设计》实验报告

    实 验 报 告 课程:程序设计与数据结构 姓名:杨京典 班级:1623 学号:20162302 实验名称:Android程序设计 实验器材:装有Android Studio的联想拯救者80RQ 实验目 ...

  8. electron-vue工程创建

    没有vue创建经验请移步至 vue下载与安装 使用vue创建electron-vue工程 vue init simulatedgreg/electron-vue my-project 安装elemen ...

  9. Python 实现火车票查询工具

    注意:由于 12306 的接口经常变化,课程内容可能很快过期,如果遇到接口问题,需要根据最新的接口对代码进行适当修改才可以完成实验. 一.实验简介 当你想查询一下火车票信息的时候,你还在上 12306 ...

  10. TOTP算法 基于时间的一次性密码

    /** Copyright (c) 2011 IETF Trust and the persons identified as authors of the code. All rights rese ...