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 流程控制知识总结 本文知识点: 流程控制知识总结 流程控制知识总结 选择结构语句 循环结构语句 ...
随机推荐
- [MSDN] Windows Server 2012 R2 简/繁/英下载
Windows Server 2012 R2 Chinese-Simplified ISO SHA1-------------------------------------------------- ...
- MVC日期格式化,后台使用Newtonsoft.Json序列化日期,前端使用”f”格式化日期
MVC控制器中,经常使用Newtonsoft.Json把对象序列化成json字符串传递到前端视图.当对象中有DateTime类型的属性时,前后台如何处理才能把DateTime类型转换成想要的格式呢? ...
- html圆形头像的制作
<html> <head><title>圆形头像的制作</title> <style type="text/css">. ...
- andriod 文本居中: android:gravity="center"
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools=&q ...
- Oracle数据库--解决单张表中数据量巨大(大数据、数据量上百万级别,后查询,更新数据等耗时剧增)
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/QQ578473688/article/details/54561397 思路1:采用备份表 备份表中 ...
- mr
大数据技术 —— MapReduce 简介 本文为senlie原创,转载请保留此地址:http://www.cnblogs.com/senlie/ 1.概要很多计算在概念上很直观,但由于输入数据很大, ...
- leetcode第一刷_Gray Code
说到格雷码,应该没人不知道,详细它有什么用,我还真不是非常清楚,我室友应该是专家.生成的规律不是非常明显,之前看到帖子讲的,这会儿找找不到了.. 思想是这种,假设有n位,在第2^(n-1)个编码以下画 ...
- JAVA常见算法题(三十三)---求子串在字符串中出现的次数
计算某字符串中子串出现的次数. public static void main(String[] args) { String s1 = "adcdcjncdfbcdcdcd"; ...
- Ubuntu 将应用程序固定到快速启动栏
Ubuntu上没有快捷方式的说法,而通过软件中心安装的软件就有图标,并能加入到启动器上,这是因为它们有一个desktop配置文件的缘故.这些配置文件在/usr/share/applications这个 ...
- DeDeCMS(织梦)变量覆盖0day getshell
测试方法: @Sebug.net dis本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负! #!usr/bin/php -w <?php error_reporting( ...