Java使用条件语句和循环结构确定控制流

与任何程序设计语言一样,Java使用条件语句和循环结构确定控制流。本文将简单讲解条件、循环和switch。

一、块作用域

块(block),即复合语句。是指由一对大括号括起来的若干条简单的Java语句。块确定了变量的作用域。

比如:

 1 public class Code {
 2 static
 3 {
 4     System.out.println("1");
 5 }
 6 {
 7     System.out.println("2");
 8 }
 9 public Code()
10 {
11     System.err.println("3");
12 }
13 public static void main(String[]args)
14 {
15     new Code();
16 }
17 }

注意:不能在嵌套的两个块中声明同名的变量。

二、条件语句

格式1:

if(condition)

{

statement1

statement2

........

}

例如:

1 if(youSales>=target)
2 {
3    performance="Satisfactory";
4    bonus=1000;
5 }

格式2:

if(condition)statement1 else statement2

例如:

 1 if(youSales>=target)
 2 {
 3   performance=“Satisfactory”;
 4   bonus=100+10*(youSales-target“);
 5  }
 6 else
 7 {
 8   performance=”Unstatisfactory“;
 9   bonus=0;
10 }

三、循环

当条件为true时,while循环执行。

格式1:

while(condition)statemnet

例如:

1 while (balance<goal)
2 {
3 balance+=payment;
4 double interest=balance*interestRate/100;
5 balance+=interest;
6 years++;
7 }

格式2:

do statement while(condition);

 1 do
 2     {
 3         balance+=payment;
 4         double interest=balance*interestRate/100;
 5         balance+=interest;
 6
 7         year++;
 8
 9         System.out.printf("After year %d,your balance is %,.2f%,year,balance");
10
11         System.out.print("Ready to retire?(Y/N)");
12         input=in.next();
13     }
14     while(input.equals("N"));
15
16     }

四、确定循环

for循环语句是支持迭代的一种通用结构,利用每次迭代之后更新的计数器或类似的变量来控制迭代的次数。

格式类似如下:

for(int i=0;i<x.length;i++)

System.out.println(i);

例子4个:

 1 public class ShuZu1 {
 2     public static void main(String[]args){
 3         int [][] x={{1,2,2,2,2},{3,3,3,3,3},{4,5,-1,17,55}};
 4         int result=qiuHe(x);
 5         System.out.println("和是"+result);
 6         }
 7     public static int qiuHe(int[][]x){
 8         int s=0;
 9         for(int i=0;i<x.length;i++)
10         {
11             for(int j=0;j<x[i].length;j++)
12             {
13                 s+=x[i][j];
14                 }
15             }
16         return s;
17     }
18 }
 1 public class ShuZu2 {
 2     public static void main(String[]args){
 3         int [][] x=new int[7][7];
 4         //生成随机数组,注意没有返回值,另外打印一行字
 5         suiJi(x);
 6         System.out.println("生成的数组是:");
 7
 8         //显示数组内容,注意没有返回值
 9         showArray(x);
10
11         //取值
12         float result=getAvg(x);
13         System.out.println("平均数是"+result);
14
15     }
16     static float getAvg(int [][] x){
17         float s=0;
18         for(int i=0;i<x.length;i++){
19             for(int j=0;j<x[i].length;j++){
20                 s+=x[i][j];
21             }
22         }
23         return s/(x.length*x[0].length);
24     }
25     static void suiJi (int[][]x){           //这里我出错了。返回值写了int型,不应该的。思考一下。
26         for(int i=0;i<x.length;i++){
27             for(int j=0;j<x[i].length;j++){
28             x[i][j]=(int)(Math.random()*10);
29             }
30         }
31     }
32     static void showArray(int[][]x){        //这里我出错了。返回值写了int型,不应该的。思考一下。
33         for(int i=0;i<x.length;i++){
34             for(int j=0;j<x[i].length;j++){
35                 System.out.print(x[i][j]+"\t");// 给数据空格
36             }
37             System.out.println();//打印换行
38         }
39     }
40 }
 1 import java.util.Arrays;
 2 public class SuZu3{
 3     public static void main(String[] args) {
 4         int [] x={2,-1,7,777,6,764,85896,65554,0,874785,417825,74};
 5         sort(x,‘n‘);
 6         for(int i=0;i<x.length;i++){
 7             System.out.print(x[i]+"\t");
 8             }
 9         }
10     //给数组进行选择性排序
11     //调用API进行升序
12     static void sort(int[]x,char Flag){
13         if(‘A‘==Flag){
14             Arrays.sort(x);
15             }
16         else {
17             for(int i=0;i<x.length-1;i++){
18                 for(int j=0;j<x.length-1-i;j++){
19                     int temp=0;
20                     if(x[j]<x[j+1]){
21                         temp=x[j];
22                         x[j]=x[j+1];
23                         x[j+1]=temp;
24                         }
25                     }
26                 }
27             }
28         }
29     }
 1 import java.util.Scanner;
 2
 3 public class Suzu4 {
 4     public static void main(String[] args) {
 5         System.out.println("请输入");//这个命令只能紧贴在Scanner scan = new Scanner(System.in);的上面或下面才有效。
 6         Scanner scan = new Scanner(System.in);
 7         //System.out.println("请输入");或者放在Scanner scan = new Scanner(System.in);的下面
 8         String str = scan.nextLine();// nextLine才是接收一行
 9
10         char[] s = str.toCharArray();// 把字符串转换称一个字符数组
11         scan.close();
12         int letterCount = 0;
13         int numberCount = 0;
14         int spaceCount = 0;
15         int otherCount = 0;
16         for (int i = 0; i < s.length; i++) {
17             if (s[i] >= ‘a‘ && s[i] <= ‘z‘ || s[i] >= ‘A‘ && s[i] <= ‘Z‘) {
18                 letterCount++;
19             } else if (s[i] >= ‘1‘ && s[i] <= ‘9‘) {
20                 numberCount++;
21             } else if (s[i] == ‘ ‘) {
22                 spaceCount++;
23             } else {
24                 otherCount++;
25             }
26         }
27         System.out.println("字母有" + letterCount + "个");
28         System.out.println("数字有" + numberCount + "个");
29         System.out.println("空格有" + spaceCount + "个");
30         System.out.println("其他有" + otherCount + "个");
31     }
32 }//ctrl+shift+f 是代码格式化
33 //ctrl+shift+o  是导包

五、多重选择:switch语句

格式类似如下:

switch(choice)

case 1:

........

break;

case 2:

.......

break;

.........

//可以再来几个case(用break结束一下)

default:

.......

break;

注意:

case标签可以是:

* 类型为char、byte、short或int的常量表达式。

* 枚举常量

* 从Java SE 7开始,case标签还可以是字符串字面量。

时间: 2024-08-05 09:53:44

Java使用条件语句和循环结构确定控制流的相关文章

Java基础第六章(循环结构二)

一.for循环 语法: for(表达式1;表达式2;表达式3){ //循环体}1.表达式1就是一个赋值的语句,循环结构的初始化部分,为循环变量赋初始值 例如:int i=0;2.表达式2条件语句,循环结构的循环条件,例如:i<1003.表达式3赋值语句,通常使用++或--运算符.循环结构的迭代部分,通常用来修改循环变量的值 例如:i++ 示例: package cn.ytzl.test; import java.util.Scanner; public class Test { public s

第六章—条件语句和循环

6.1①条件语句在脚本中称为控制流.②尽管JavaScript不支持"elseif"关键字,但是允许通过if/else语句链创建这种类型的语句.③switch条件语句中default项中也用上break语句,因为如果它没有在最后,后面的case依然会执行.④如果case中没有default,而它又不是最后一个,则称为fall through(落空)⑤条件运算符(也称为三元运算符): 6.2提示框获得用户输入: var username=window.prompt("Give

[Python学习] 专题二.条件语句和循环语句的基础知识

        前面讲述了"专题一.函数的基础知识",而这篇文章讲述的Python的条件语句和循环语句的基础知识.主要内容包括: 1.条件语句:包括单分支.双分支和多分支语句,if-elif-else 2.循环语句:while的使用及简单网络刷博器爬虫 3.循环语句:for的使用及遍历列表.元组.文件和字符串 前言: 语句块         在讲诉条件语句.循环语句和其他语句之前,先来补充语句块知识.(前面讲函数时已经用到过) 语句块并非一种语句,它是在条件为真(条件语句)时执行或执行

javascript语句——条件语句、循环语句和跳转语句

× 目录 [1]条件语句 [2]循环语句 [3]跳转语句 前面的话 默认情况下,javascript解释器依照语句的编写顺序依次执行.而javascript中的很多语句可以改变语句的默认执行顺序.本文介绍可以改变语句默认执行顺序的条件语句.循环语句和跳转语句 条件语句 脚本的威力体现在它们可以根据人们给出的各种条件做出决策,javascript使用条件语句来做判断 条件语句(conditianal statement)通过判断表达式的值来决定执行还是跳过某些语句,包括if语句和switch语句

if条件语句 for循环语句

(一)if语句 If语句是一个条件分支语句. C#中,空语句是合法的,他不做任何操作. 好的编码风格要求语句块中要有缩进. I f语句中if后面可以没有else,可以有多个else if,但只能最多有一个else! 例题: /*if语句的简单应用 收入和逃税问题 double money; Console.Write("月收入"); money = Convert.ToDouble(Console.ReadLine()); if (money > 3500) { Console.

编译器--支持条件语句和循环语句的计算器(三)

在上篇文章中实现了支持变量和赋值语句的计算器,这次加入了条件语句和循环语句. 语法简介 下面是条件语句的一个例子,能够对条件语句的格式有一个感性认识: if  var1 > 5 then var2 := 10; end 条件语句以if开始,后跟一个条件表达式,如果其为真则执行then后面的语句块,条件语句以end结束. 条件语句也可以支持else分支语句,比如 if var1 > 5 then var2 := 10; else var2 := -10; end 接下来是一个循环语句的例子: v

python基础(4):条件语句与循环语句

今天我们看看条件语句与循环语句. 预习: 1.使用while循环输出1 2 3 4 5 6 8 9 10 2.求1-100的所有数的和 3.输出 1-100 内的所有奇数 4.输出 1-100 内的所有偶数 5.求1-2+3-4+5 ... 99的所有数的和 6.用户登陆(三次机会重试) 一.条件语句 当我们写的程序需要分支时,也可以说当一个事件发生时在特定情况下会产生不同处理情况时就会用到我们的条件语句. if...else语句: 单分支: 1 ''' 2 if 条件 : 3 满足条件后执行的

兄弟连学Python(06)------- 条件语句和循环语句

Python的条件语句和循环语句的基础知识: 1.条件语句:包括单分支.双分支和多分支语句,if-elif-else 2.循环语句:while的使用及简单网络刷博器爬虫 3.循环语句:for的使用及遍历列表.元组.文件和字符串 在讲诉条件语句.循环语句和其他语句之前,先来补充语句块知识.(前面讲函数时已经用到过) 语句块并非一种语句,它是在条件为真(条件语句)时执行或执行多次(循环语句)的一组语句.在代码前放置空格或tab字符来缩进语句即可创建语句块.很多语言特殊单词或字符(如begin或{)来

条件语句和循环语句

条件语句与循环语句的使用 If 语句的使用 作用: If的条件语句能够使得计算机通过判断目标条件的正确与否,来决定是否要执行接下来的程序代码进而控制程序的运行,满足则运行下方将要执行的命令或者操作,反之则程序无法运行 格式: if 条件: 代码1 代码2 代码3 ... # 如果if条件满足要求,则依次执行以下代码1,代码2,代码3...直至没有代码可以运行则语句结束 if...else格式 if 条件: 代码1 代码2 代码3 ... #满足if条件内容则依次运行上述代码 else: 代码1