一、流程控制语句

1、分支语句

1)if else

语法:(写法1)

if(条件1){     //写一次

满足条件1执行在代码

}else if(条件2){    //写0或n次

不满足条件1,满足条件2执行在代码

}else if(条件3){    //写0或n次

不满足条件1和2,满足条件3执行在代码

}else{               //写0或1次

不满足以上所有条件执行在代码

}

练习1:写一个程序,输入整数,判断是正数、负数还是0

语法(写法2)条件之间可以有交集

if(条件1){     //写一次

满足条件1执行在代码

}

if(条件2){    //写0或n次

满足条件2执行在代码

}

if(条件3){    //写0或n次

满足条件3执行在代码

}

练习2:员工出差交通工具在选择,输入员工 的薪水,

>=10000,飞机

8000·9999 高铁

6000··7999 汽车

5000··6999 自行车

4000··5999 步行

3000··4999 家里蹲

低于3000 显示无此工资标准

思路:先判断<3000,打印提示:无此工资标准,立即结束main方法:return;返回

语法(写法3)

如果分支体中只有一行代码,{}可以省略

if(a > 0){   //if默认只管一行

System.out.println("是整数“);

}else{    //默认只管一行

System.out.println("不是整数”);

}

语法(写法4)if else可以嵌套使用 

if(条件1){

满足条件1执行在语句

if(条件2){

既满足条件1执行在语句,也满足条件2执行在语句;

}else{

满足条件1执行在语句,不满足条件2执行在语句;

}

}else{

不满足条件1执行在语句 ;

}

笔试题:

int a = 3,b=5,c=8,d=0;

if(a>b)

if(c>b)

d=a;

else

d=b;

system.out.println(d);

2)switch case

switch 开关 根据变量在值选择某个分支

语法:

switch(变量){ //支持byte short int char enum

case 值1:

满足值1执行在语句;

case 值2:

满足值2执行在语句;

case 值3:

满足值3执行在语句;

default:

不满足以上所有值默认执行在语句;

}

练习:成绩评级分析器

输入一个五分制成绩,显示出级别:

5  优

4  良

3  及格

2、1、0  不及格

注意:

1)switch中在变量支持:

jdk7支持String类型

String str = "  ";

switch(str){

case "java":.....break;

case "QTP":.....break;

..

}

2)每个分支结尾必须由break语句(结束分支)

练习2:

1、提示并输入分值score;
2、判断分值的有效性;
3、判断级别;
4、输出结果。
package review1.homework;
import java.util.Scanner;
public class TestGrade{
public static void main(String[] args){

Scanner sc = new Scanner(System.in);
System.out.println(“请输入分值:”);
int score = sc.nextInt();

if(score<0 ||(短路或) score>100 ){
System.out.println("无效的分值:" + score);
return;
}

int num = score/10;
char grade =‘@’;//grade=‘\u0000’字符值
switch(num){
case 10;
case 9;
grade = 'A'; break;
case 8;
grade = 'B'; break;
case 7;
grade = 'C'; break;
case 6;
grade = 'D'; break;
default: //一定是0、1、2、3、4、5
grade = 'E';

}
System.out.println("级别:" + grade);
}
}

注意:局部变量(方法中定义的变量)未经初始化无法直接使用;例如:grade是char类型,没值无法输出。

练习3:

package review1.homework;

import java.util.Scanner;

public class TestDay{

public static void main(String[] args){

Scanner sc = new Scanner(System.in);

System.out.println(“请输入年份”);

int day = sc.nesxInt();

System.out.println(“请输入月份”);

int month = sc.nextInt();

if(month<1 || month >12){

System.out.println(“无效的月份:” + month)

return;

}

int day = -1;  //初始化,无效的值

Switch(month){

case 1;

case 3;

case 5;

case 7;

case 8;

case 10;

case 12;

day = 31;    break;

case4;

case 6;

case 9;

case 11;

day = 33;    break;

default:   //一定是2月份,根据year判断;

if(TestLeapYear.inLeapYear(year)){

day = 29;

}else{

day =28;

}

}

System.out.println("day");

}

}

2、循环语句

1)for循环

快捷键
alt + / 快速提示生成代码
ctrl + d 删除光标所在、选定的行
ctrl + / 添加、去除单行注释
Ctrl + Shift + / 添加多行注释
Ctrl + shift + \ 解除多行注释

/**+回车键:类/方法的注释

注意:
1)jdk支持String类型
2)每个分支的结尾必须由break语句,如果没有break,在满足条件后,会继续执行后续所有分支,知道遇到break为止。
3)
比较:
break对分支、循环的控制;
return对方法的控制,提前返回方法调用

需求:打印1~5
system.out.println(1);
system.out.println(2);
system.out.println(3);
system.out.println(4);
system.out.println(5);
二、循环语句
循环:反复执行同样或类似的代码
循环要素:初始值、循环条件、步进语句、循环体;
1、for循环
语法:
for(初始化语句1;循环条件2;步进语句3){
//循环体
满足循环条件执行的语句4;
}
。。。
执行步骤:
初始化语句1;
循环条件2;
满足循环条件执行的语句4;
步进语句3
循环条件2;
满足循环条件执行的语句4;
步进语句3
循环条件2;
false;
结束for循环;

package day06;
//测试for循环核心语法
public class TestFor{
public static void main(String[] arg){
/* //语法一:
System.out.println(1);
System.out.println(2);
System.out.println(3);
System.out.println(4);
System.out.println(5);
**/

/* //语法二:
for(int i=1;i<= 5;i++){ //i的作用域在for循环体中
System.out.println(i);
}
** /

/* //语法三:
int i = 1; //i的作用域main都 可见
for(;i <= 5;i++){
System.out.println("i=" + i);
}
System.out.println("i=" + i);
**/

int i = 1;
for ( ; ; ){
System.out.println("i=" + i);
} //无法到达的代码,无线循环即死循环;
}

}

//语法二:
for(i=1;i<= 5;i++){
System.out.println(i);
i=1;满足i <=5,i++,打印i=1;
满足i <=5,i++,打印i=2;
满足i <=5,i++,打印i=3;
满足i <=5,i++,打印i=4;
满足i <=5,i++,打印i=5;
i=6;不满足i <=5,结束语句
i不能被解析到;

2)while循环:执行0次或n次

语法:

while(循环条件){

//循环体

满足循环条件的执行语句

}

while(true){

if(退出条件){

break;

}

}

3)do while 循环

特点:至少执行一次的循环;

语法

do{

会先执行一次,满足循环条件,会循环执行

}while(循环条件)

练习:循环提示输入整数并输出,直到输入-1结束。

注意:

1)至少执行一次;

2)必须分号结尾;

3)while();中变量必须在外声明

循环嵌套:

循环、分支都可以互相嵌套;

但方法中不能嵌套定义,方法中不能再定义方法,可以调用其他方法;

for(int i=1;i<=5;i++){

for(int j=1;j<=5;j++){

System.out.println(j);

}

}

3、控制语句

1)break 打断

1)用于switch case,表示结束分支语句

2)结束循环,就近原则;

3)break循环标号;结束标号指定是循环;

用途:用于从里层循环直接结束外层循环;

2)continue 继续

1)只能用于循环,结束本次循环,继续下一次循环就近原则;

2)continue循环标号;结束标号指定的本次循环,继续下一次循环;

Java语句语法的更多相关文章

  1. 7#Java基本语句语法

    Java基本语句语法https://github.com/DuGuQiuBai/Java/blob/master/day03/day03%E6%80%BB%E7%BB%93.txt 1:位运算符(了解 ...

  2. JavaSE入门学习7:Java基础语法之语句(下)

    继续接着Java基础语法来:JavaSE入门学习5:Java基础语法(一)和JavaSE入门学习6:Java基础语法(二). 语句 Java经常使用的3种循环:while.do...while,for ...

  3. Java基础语法(基本语句)

    Java基础语法 标识符在程序中自定义的一些名称.由26个英文字母大小写,数字:0-9符号:_&组成定义合法标识符规则:1.      数字不可以开头2.      不可以使用关键字Java中 ...

  4. JavaSE入门学习6:Java基础语法之运算符和语句(上)

    继续接着上篇:JavaSE入门学习5:Java基础语法(一)来看Java的基础语法. 五运算符 运算符是一种"功能"符号,用以通知Java进行相关的运算.比方.我们须要将变量age ...

  5. 050 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 12 continue语句

    050 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 12 continue语句 本文知识点:continue语句 continue语句 continue ...

  6. 049 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 11 break语句

    049 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 11 break语句 本文知识点:break语句 break语句 break语句前情回顾 1.swi ...

  7. 032 01 Android 零基础入门 01 Java基础语法 03 Java运算符 12 运算符和if-else条件语句的综合案例——闰年问题

    032 01 Android 零基础入门 01 Java基础语法 03 Java运算符 12 运算符和if-else条件语句的综合案例--闰年问题 本文知识点:运算符和if-else条件语句的综合案例 ...

  8. java基础语法笔记

    这段时间看了一些java,急了一些笔记,记下一遍以后复习用! 2016-07-24 15:12:40 java很多语法都跟C#类似,下面列举一些不同的地方******注意***** java中的系统方 ...

  9. Java基础语法(下篇)

     Java基础语法(下篇) 内容概要:        (1)函数的定义        (2)函数的特点        (3)函数的应用        (4)函数的重载               ...

随机推荐

  1. Windows 10下Docker使用经验谈

    最近一直在开发Apworks框架的案例代码,同时也在一起修复Apworks框架中的Bug和一些设计上的不足.遇到的一个普遍问题是,代码的调试过程需要依赖很多外部系统,比如MongoDB.Postgre ...

  2. 【转】NOR Flash擦写和原理分析

    1. NOR FLASH 的简单介绍 NOR FLASH 是很常见的一种存储芯片,数据掉电不会丢失.NOR FLASH支持Execute On Chip,即程序可以直接在FLASH片内执行(这意味着存 ...

  3. Ajax禁止重复提交

    var pendingRequests = []; var generatePendingRequestKey = function (obj) { return obj.data || {}; } ...

  4. Akka(33): Http:Marshalling,to Json

    Akka-http是一项系统集成工具.这主要依赖系统之间的数据交换功能.因为程序内数据表达形式与网上传输的数据格式是不相同的,所以需要对程序高级结构化的数据进行转换(marshalling or se ...

  5. 关于Makefile,Makefile.in,Makefile.am,Configure功能及相互关系的问题

    makefile写法 在 Unix 上写程式的人大概都碰过 Makefile,尤其是用 C 来开发程式的人.用 make来开发和编译程式的确很方便,可是要写出一个 Makefile就不简单了.偏偏介绍 ...

  6. POJ 3468 A Simple Problem with Integers(树状数组区间更新)

    A Simple Problem with Integers Time Limit: 5000MS   Memory Limit: 131072K Total Submissions: 97217   ...

  7. Ocelot API网关的实现剖析

    在微软Tech Summit 2017 大会上和大家分享了一门课程<.NET Core 在腾讯财付通的企业级应用开发实践>,其中重点是基于ASP.NET Core打造可扩展的高性能企业级A ...

  8. hive中UDF、UDAF和UDTF使用

    Hive进行UDF开发十分简单,此处所说UDF为Temporary的function,所以需要hive版本在0.4.0以上才可以. 一.背景:Hive是基于Hadoop中的MapReduce,提供HQ ...

  9. shuffle过程简介--笔记

    数据保存在hdfs上 拿到数据后分片处理 输入到Map 输出键值对 写到缓存,满的时候溢写到磁盘 缓存的数据写入磁盘的过程中,分区排序,合并 多个磁盘文件归并 通知Reduce任务拉取 Map端的sh ...

  10. HTML5 设备上的API

    一.Vibration API ,接受两种类型参数 vibrate (unsigned long time)   当参数是unsigned long的时候 此时参数表示震动时间.  NotSuppor ...