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. python统计词频

    arr = [1,2,3,4,5,6,4,5,2,3,6,8,9,6,5,3,6,2,4]dic={}for item in arr: if item in dic.keys(): dic[item] ...

  2. leaflet简单例子,绘制多边形

    var crs = L.CRS.EPSG900913; var map = L.map('map', { crs: crs, width: '100%', height: '100%', maxZoo ...

  3. java 二叉树排序

    1 class BinaryTree{ 2 class Node{ 3 private Comparable data; 4 private Node left; 5 private Node rig ...

  4. Spring Boot + Freemarker多语言国际化的实现

    最近在写一些Web的东西,技术上采用了Spring Boot + Bootstrap + jQuery + Freemarker.过程中查了大量的资料,也感受到了前端技术的分裂,每种东西都有N种实现, ...

  5. [BZOJ 1297][SCOI2009]迷路

    1297: [SCOI2009]迷路 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1418  Solved: 1017[Submit][Status ...

  6. python全栈学习--day11(函数高级应用)

    一,函数名是什么? 函数名是函数的名字,本质:变量,特殊的变量. 函数名()执行此函数 ''' 在函数的执行(调用)时:打散. *可迭代对象(str,tuple,list,dict(key))每一个元 ...

  7. java web 初学

    我希望在本学期本堂课上学会使用java web 框架 精通mvc架构模式 学会通过框架和数据库对产品进行构造与编写. 我计划每周用16小时的时间进行学习java web 一周4学时上课时间 周一到周五 ...

  8. 库函数strstr的实现

    没什么说的,常规思路: 函数原型:const char* StrStr(const char *str1, const char *str2) 方法一: str1:源字符串: str2:需要查找的目的 ...

  9. new malloc和delete free 的区别

    今天看了一个面试题:问new 和 malloc, delete 和 free 的区别,扭捏了半天,也没说完全:现总结如下: 1.先看看new 和 delete 看一个例子: <span styl ...

  10. Hibernate之缓存

    Hibernate为了解决频繁查询数据的效率问题,提供了三种级别的缓存 1.一级缓存 一级缓存 又叫 session缓存 .Session对象会缓存处于持久化状态的每个对象 ,如果下次想用数据表中同一 ...