Java使用条件语句和循环结构确定控制流
与任何程序设计语言一样,Java使用条件语句和循环结构确定控制流。本文将简单讲解条件、循环和switch。
一、块作用域
块(block),即复合语句。是指由一对大括号括起来的若干条简单的Java语句。块确定了变量的作用域。
比如:
public class Code {
static
{
System.out.println("");
}
{
System.out.println("");
}
public Code()
{
System.err.println("");
}
public static void main(String[]args)
{
new Code();
}
}
注意:不能在嵌套的两个块中声明同名的变量。
二、条件语句
格式1:
if(condition)
{
statement1
statement2
........
}
例如:
if(youSales>=target)
{
performance="Satisfactory";
bonus=;
}
格式2:
if(condition)statement1 else statement2
例如:
if(youSales>=target)
{
performance=“Satisfactory”;
bonus=+*(youSales-target“);
}
else
{
performance=”Unstatisfactory“;
bonus=;
}
三、循环
当条件为true时,while循环执行。
格式1:
while(condition)statemnet
例如:
while (balance<goal)
{
balance+=payment;
double interest=balance*interestRate/;
balance+=interest;
years++;
}
格式2:
do statement while(condition);
do
{
balance+=payment;
double interest=balance*interestRate/;
balance+=interest; year++; System.out.printf("After year %d,your balance is %,.2f%,year,balance"); System.out.print("Ready to retire?(Y/N)");
input=in.next();
}
while(input.equals("N")); }
四、确定循环
for循环语句是支持迭代的一种通用结构,利用每次迭代之后更新的计数器或类似的变量来控制迭代的次数。
格式类似如下:
for(int i=0;i<x.length;i++)
System.out.println(i);
例子4个:
public class ShuZu1 {
public static void main(String[]args){
int [][] x={{1,2,2,2,2},{3,3,3,3,3},{4,5,-1,17,55}};
int result=qiuHe(x);
System.out.println("和是"+result);
}
public static int qiuHe(int[][]x){
int s=0;
for(int i=0;i<x.length;i++)
{
for(int j=0;j<x[i].length;j++)
{
s+=x[i][j];
}
}
return s;
}
}
public class ShuZu2 {
public static void main(String[]args){
int [][] x=new int[7][7];
//生成随机数组,注意没有返回值,另外打印一行字
suiJi(x);
System.out.println("生成的数组是:");
//显示数组内容,注意没有返回值
showArray(x);
//取值
float result=getAvg(x);
System.out.println("平均数是"+result);
}
static float getAvg(int [][] x){
float s=0;
for(int i=0;i<x.length;i++){
for(int j=0;j<x[i].length;j++){
s+=x[i][j];
}
}
return s/(x.length*x[0].length);
}
static void suiJi (int[][]x){ //这里我出错了。返回值写了int型,不应该的。思考一下。
for(int i=0;i<x.length;i++){
for(int j=0;j<x[i].length;j++){
x[i][j]=(int)(Math.random()*10);
}
}
}
static void showArray(int[][]x){ //这里我出错了。返回值写了int型,不应该的。思考一下。
for(int i=0;i<x.length;i++){
for(int j=0;j<x[i].length;j++){
System.out.print(x[i][j]+"\t");// 给数据空格
}
System.out.println();//打印换行
}
}
}
import java.util.Arrays;
public class SuZu3{
public static void main(String[] args) {
int [] x={2,-1,7,777,6,764,85896,65554,0,874785,417825,74};
sort(x,'n');
for(int i=0;i<x.length;i++){
System.out.print(x[i]+"\t");
}
}
//给数组进行选择性排序
//调用API进行升序
static void sort(int[]x,char Flag){
if('A'==Flag){
Arrays.sort(x);
}
else {
for(int i=0;i<x.length-1;i++){
for(int j=0;j<x.length-1-i;j++){
int temp=0;
if(x[j]<x[j+1]){
temp=x[j];
x[j]=x[j+1];
x[j+1]=temp;
}
}
}
}
}
}
import java.util.Scanner;
public class Suzu4 {
public static void main(String[] args) {
System.out.println("请输入");//这个命令只能紧贴在Scanner scan = new Scanner(System.in);的上面或下面才有效。
Scanner scan = new Scanner(System.in);
//System.out.println("请输入");或者放在Scanner scan = new Scanner(System.in);的下面
String str = scan.nextLine();// nextLine才是接收一行
char[] s = str.toCharArray();// 把字符串转换称一个字符数组
scan.close();
int letterCount = 0;
int numberCount = 0;
int spaceCount = 0;
int otherCount = 0;
for (int i = 0; i < s.length; i++) {
if (s[i] >= 'a' && s[i] <= 'z' || s[i] >= 'A' && s[i] <= 'Z') {
letterCount++;
} else if (s[i] >= '1' && s[i] <= '9') {
numberCount++;
} else if (s[i] == ' ') {
spaceCount++;
} else {
otherCount++;
}
}
System.out.println("字母有" + letterCount + "个");
System.out.println("数字有" + numberCount + "个");
System.out.println("空格有" + spaceCount + "个");
System.out.println("其他有" + otherCount + "个");
}
}//ctrl+shift+f 是代码格式化
//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标签还可以是字符串字面量。
Java使用条件语句和循环结构确定控制流的更多相关文章
- Java基础—控制流程语句(条件语句与循环结构)
与任何程序设计语言一样,Java使用条件语句和循环结构确定控制流程.Java的控制流程结构与C和C++的控制流程机构一样,只有很少的例外情况.没有goto语句,但break语句可以带标签,可以利用它实 ...
- Python学习--04条件控制与循环结构
Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...
- Java入门 - 语言基础 - 09.循环结构
原文地址:http://www.work100.net/training/java-loop.html 更多教程:光束云 - 免费课程 循环结构 序号 文内章节 视频 1 概述 2 while循环 3 ...
- 不可或缺 Windows Native (3) - C 语言: 运算符,表达式,条件语句,循环语句,转向语句,空语句等
[源码下载] 不可或缺 Windows Native (3) - C 语言: 运算符,表达式,条件语句,循环语句,转向语句,空语句等 作者:webabcd 介绍不可或缺 Windows Native ...
- Python——条件语句及其循环
条件语句及其循环 一. 条件语句 在条件语句中可以使用以下所有的运算符: 算术运算符:+.-.*././/.%.** 关系运算符:>.<.==.<=.>=.!= 测试运算符:i ...
- javascript语句——条件语句、循环语句和跳转语句
× 目录 [1]条件语句 [2]循环语句 [3]跳转语句 前面的话 默认情况下,javascript解释器依照语句的编写顺序依次执行.而javascript中的很多语句可以改变语句的默认执行顺序.本文 ...
- python基础(4):条件语句与循环语句
今天我们看看条件语句与循环语句. 预习: 1.使用while循环输出1 2 3 4 5 6 8 9 10 2.求1-100的所有数的和 3.输出 1-100 内的所有奇数 4.输出 1-100 内的所 ...
- 第二百八十七节,MySQL数据库-条件语句、循环语句、动态执行SQL语句
MySQL数据库-条件语句.循环语句.动态执行SQL语句 1.if条件语句 delimiter \\ CREATE PROCEDURE proc_if () BEGIN ; THEN ; ELSEIF ...
- GO语言的基本语法之变量,常量,条件语句,循环语句
GO语言的基本语法之变量,常量,条件语句,循环语句 作为慕课网得笔记自己看 定义变量: 使用var关键字 var a, b, C bool var s1, s2 string = "hell ...
随机推荐
- PHP预定义变量$_SERVER
PHP预定义变量$_SERVER $_SERVER 是一个包含诸如头部(headers).路径(paths)和脚本位置(script locations)的数组.数组的实体由 web 服务器创建,不能 ...
- Yii2框架---GII自动生成
本地环境配置完成后.访问路径直接加上/gii 例如 localhost/gii 即可生成YII活动记录类 即可生成模块
- GitHub 入门不完全指南(未完待续)
我一直认为 GitHub 是一座宝藏,想让更多人的知道它.加入到这个社区中.本人能力有限,如果文中出现不对的地方,欢迎指正交流. 一.前言 大家好,我是削微寒(xuē wēi hán),一个走在进阶路 ...
- hdu1166树状数组
C国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了.A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况.由于 ...
- java:Comparable比较器
/*Comparable 是java.lang中的一个接口,所以是默认导入的,不需要显示的导入. *如果你先直接在本类中实现排序,那么可以直接实现该接口(例如:public class Compara ...
- Docker - 定制镜像
Dockerfile Docker Hub拥有大量高质的官方镜像:可直接使用的服务类镜像.语言应用镜像.基础操作系统镜像等,满足绝大部分需求. 此外,可以通过定制镜像的方式来满足实际使用中的特定需求. ...
- zabbix安装配置
实验环境 主机名 操作系统版本 IP地址 安装软件 console CentOS 7.0 114.55.29.246 Httpd.Nginx.MySQL.Zabbix log1 CentOS 7.0 ...
- CVE-2014-0038内核漏洞原理与本地提权利用代码实现分析 作者:seteuid0
关键字:CVE-2014-0038,内核漏洞,POC,利用代码,本地提权,提权,exploit,cve analysis, privilege escalation, cve, kernel vuln ...
- Java学习笔记——设计模式之三.装饰模式
函数应该做一件事,做好这件事,只做这一件事. --Clean Code 装饰模式,上代码: 先定义零件类: package cn.no3.decorator.template; public abst ...
- Oracle 12C 新特性之非分区表转分区表online clause(不停业务+索引有效)
12c以前非分区表需要转换为分区, 如果不停业务的话可以使用在线重定义,只有在表进行切换的时候会有短暂的锁表. 12c 中alter table online clause 实现了表上现有的索引有效, ...