17、JAVA流程控制
一、IF
1、第一种形式:if
if(逻辑表达式){
语句1;
语句2;
...
}
当if中只有一条语句时,可以省略{}
2、第二种形式:if-else
if(逻辑表达式){
语句块1;
} else {
语句块2;
}
3、第三种新手:if-else if -else
if(逻辑表达式){
语句块1;
} else if(逻辑表达式){
语句块2;
} else {
语句块3;
}
二、switch语句
switch(整型表达式) {
case 整型常量值1: //入口1
语句1;
语句2;
break ;
case 整型常量值2: //入口2
语句3;
break ;
……
default: //默认入口
语句n;
}
1、整型表达式:char、byte、short、int和枚举 jdk 7.0增加了字符串类型
2、break的作用是跳出switch语句,如果没有遇到break会继续执行下一条语句:如下
int a=1;
switch(a){
case 0:
System.out.println(0);
case 1:
System.out.println(1);
case 2:
System.out.println(2);
break;
case 3:
System.out.println(3);
break;
}
因为a=1,所以入口在 case 1:这里,所以马上执行语句System.out.println(1);发现这里并没有break,所以继续执行System.out.println(2);这里发现有break,然后退出switch语句
3、在很多情况下,switch-case可以代替else if结构,而switch-case实现分支功能的效率要高于else if结构,并且结构更清晰,所以推荐使用。从JDK 7.0开始,switch-case可以支持字符串表达式,将更加方便程序的操作。
三、while和do-while语句的区别
while是先判断,在执行;do-while是先执行在判断。所以do-while不管在任何情况下都会比while多执行一次
四、for语句
1、for常规写法
for ( 表达式1;表达式2;表达式3 ) {
语句块
}
例如:
for(byte i=0;i<100;i++){
System.out.println(i);
}
2、for的特殊写法
第一种:
int sum = 0 ;
int i = 1;
for ( ; i <= 10 ; i ++ ) {
sum += i ;
}
System.out.println("1到10的和为:" + sum ) ;
第二种:
int sum = 0 ;
for ( int i = 1 ; i <= 10 ; ) {
sum += i ;
i ++ ;
}
System.out.println("1到10的和为:" + sum ) ;
第三种:
for ( ; ; ) {
System.out.println("我要学习……");
}
这种方式将会形成死循环,和while(true)有相同的效果
通过上面几个中特殊写法不难看出,表达式1、表达式2和表达式3都可以省略,但是分号不能省略
第四种:
for ( int i =1 , j = 6 ; i <= 6 ; i +=2 , j -=2 ) {
System.out.println(“ i , j = “ + i + “,” + j );
}
第五种:
int[] arr={1,2,3,4,5,6,7,8};
for(int i:arr){
System.out.println(i);
}
17、JAVA流程控制的更多相关文章
- Java流程控制练习--万年历
Java流程控制练习--万年历 标签: Java入坑之旅 0x01. 打印倒三角和正三角 public static void main(String[] args) { // TODO Auto-g ...
- Java 流程控制
Java 流程控制 Java 分支结构 - if...else/switch 顺序结构只能顺序执行,不能进行判断和选择,因此需要分支 ...
- 052 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 14 Eclipse下程序调试——debug2 多断点调试程序
052 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 14 Eclipse下程序调试--debug2 多断点调试程序 本文知识点: Eclipse下程序调 ...
- 038 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 05 案例演示switch结构-星期的表示案例以及总结
038 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 05 案例演示switch结构-星期的表示案例以及总结 本文知识点:案例演示switch结构并对sw ...
- JAVA流程控制
JAVA流程控制 example1: --输出九九乘法表 public class chengfabiao { public static void main (String[] args){ ...
- Java学习笔记之:Java流程控制
一.介绍 Java流程控制包括顺序控制.条件控制和循环控制. 顺序控制,就是从头到尾依次执行每条语句操作.条件控制,基于条件选择执行语句,比方说,如果条件成立,则执行操作A,或者如果条件成立,则执行操 ...
- JAVA 流程控制之选择语句
在程序设计时,有三种基本技术可以改变程序的流程控制: 调用方法: 选择: 循环. 在这里,我们主要来讲讲选择语句. JAVA中的选择语句与C语言中的基本相同,包括: if 语句: if/else 语句 ...
- 《快乐编程大本营》java语言训练班-第4课:java流程控制
<快乐编程大本营>java语言训练班-第4课:java流程控制 第1节. 顺序执行语句 第2节. 条件分支语句:if条件语句 第3节. 条件分支语句:switch 条件语句 第4节. 条件 ...
- Java流程控制,for,switch,while.break,continue,return
Java流程控制,for,switch,while.break,continue,return
- 053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结
053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结 本文知识点: 流程控制知识总结 流程控制知识总结 选择结构语句 循环结构语句 ...
随机推荐
- nginx简单代理配置
原文:https://my.oschina.net/wangnian/blog/791294 前言 Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器, ...
- linux shell if语句使用方法
原文地址:http://blog.chinaunix.net/uid-24607609-id-2118151.html 最精简的 if 命令的语法是: if TEST-COMMANDS; then C ...
- 十大开源ERP点评 献给深水区的中小企业和CIO们
原文地址:http://www.oschina.net/news/58437/top-10-erp-software 如今,企业资源规划(ERP)和客户关系管理(CRM)系统的必要性已经被各种组织和企 ...
- Vi 编辑
1.vi的基本概念 基本上vi可以分为三种状态,分别是命令模式(command mode).插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下: 1) ...
- 解决sdk manager下载非常慢或者下载失败
有了sdk manager,打开它,想下载一些须要的东西总是会发现非常慢,然后就仅仅好慢慢等待,等待许久之后最后是失败了,这样就会非常麻烦,以下我总结总结,怎样解决这些问题,让你在分分钟下载好这些东西 ...
- 《Windows核心编程》第九章——用内核对象进行线程同步
先举一个有bug的例子: #include <iostream> #include <windows.h> #include <process.h> using n ...
- Redis中对Key进行分类
使用":"体现层次 >set key1:key2:key4 value1 "OK" >set key1:key2:key5 value2 " ...
- [leetcode]Remove Nth Node From End of List @ Python
原题地址:http://oj.leetcode.com/problems/remove-nth-node-from-end-of-list/ 题意: Given a linked list, remo ...
- iOS开发-Quartz2D初识
Quartz2D如果单独的从Quartz,那么会发现Quartz是一个开源的Java作业调度框架,单独从英文翻译的角度来看的话Quartz的英文是石英,如果有的时候不小心搜索会发现手表推荐.本文中介绍 ...
- 日期 日历 时区 地区 格式化 API 案例 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...