Java语句语法
一、流程控制语句
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语句语法的更多相关文章
- 7#Java基本语句语法
Java基本语句语法https://github.com/DuGuQiuBai/Java/blob/master/day03/day03%E6%80%BB%E7%BB%93.txt 1:位运算符(了解 ...
- JavaSE入门学习7:Java基础语法之语句(下)
继续接着Java基础语法来:JavaSE入门学习5:Java基础语法(一)和JavaSE入门学习6:Java基础语法(二). 语句 Java经常使用的3种循环:while.do...while,for ...
- Java基础语法(基本语句)
Java基础语法 标识符在程序中自定义的一些名称.由26个英文字母大小写,数字:0-9符号:_&组成定义合法标识符规则:1. 数字不可以开头2. 不可以使用关键字Java中 ...
- JavaSE入门学习6:Java基础语法之运算符和语句(上)
继续接着上篇:JavaSE入门学习5:Java基础语法(一)来看Java的基础语法. 五运算符 运算符是一种"功能"符号,用以通知Java进行相关的运算.比方.我们须要将变量age ...
- 050 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 12 continue语句
050 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 12 continue语句 本文知识点:continue语句 continue语句 continue ...
- 049 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 11 break语句
049 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 11 break语句 本文知识点:break语句 break语句 break语句前情回顾 1.swi ...
- 032 01 Android 零基础入门 01 Java基础语法 03 Java运算符 12 运算符和if-else条件语句的综合案例——闰年问题
032 01 Android 零基础入门 01 Java基础语法 03 Java运算符 12 运算符和if-else条件语句的综合案例--闰年问题 本文知识点:运算符和if-else条件语句的综合案例 ...
- java基础语法笔记
这段时间看了一些java,急了一些笔记,记下一遍以后复习用! 2016-07-24 15:12:40 java很多语法都跟C#类似,下面列举一些不同的地方******注意***** java中的系统方 ...
- Java基础语法(下篇)
Java基础语法(下篇) 内容概要: (1)函数的定义 (2)函数的特点 (3)函数的应用 (4)函数的重载 ...
随机推荐
- Windows 10下Docker使用经验谈
最近一直在开发Apworks框架的案例代码,同时也在一起修复Apworks框架中的Bug和一些设计上的不足.遇到的一个普遍问题是,代码的调试过程需要依赖很多外部系统,比如MongoDB.Postgre ...
- 【转】NOR Flash擦写和原理分析
1. NOR FLASH 的简单介绍 NOR FLASH 是很常见的一种存储芯片,数据掉电不会丢失.NOR FLASH支持Execute On Chip,即程序可以直接在FLASH片内执行(这意味着存 ...
- Ajax禁止重复提交
var pendingRequests = []; var generatePendingRequestKey = function (obj) { return obj.data || {}; } ...
- Akka(33): Http:Marshalling,to Json
Akka-http是一项系统集成工具.这主要依赖系统之间的数据交换功能.因为程序内数据表达形式与网上传输的数据格式是不相同的,所以需要对程序高级结构化的数据进行转换(marshalling or se ...
- 关于Makefile,Makefile.in,Makefile.am,Configure功能及相互关系的问题
makefile写法 在 Unix 上写程式的人大概都碰过 Makefile,尤其是用 C 来开发程式的人.用 make来开发和编译程式的确很方便,可是要写出一个 Makefile就不简单了.偏偏介绍 ...
- POJ 3468 A Simple Problem with Integers(树状数组区间更新)
A Simple Problem with Integers Time Limit: 5000MS Memory Limit: 131072K Total Submissions: 97217 ...
- Ocelot API网关的实现剖析
在微软Tech Summit 2017 大会上和大家分享了一门课程<.NET Core 在腾讯财付通的企业级应用开发实践>,其中重点是基于ASP.NET Core打造可扩展的高性能企业级A ...
- hive中UDF、UDAF和UDTF使用
Hive进行UDF开发十分简单,此处所说UDF为Temporary的function,所以需要hive版本在0.4.0以上才可以. 一.背景:Hive是基于Hadoop中的MapReduce,提供HQ ...
- shuffle过程简介--笔记
数据保存在hdfs上 拿到数据后分片处理 输入到Map 输出键值对 写到缓存,满的时候溢写到磁盘 缓存的数据写入磁盘的过程中,分区排序,合并 多个磁盘文件归并 通知Reduce任务拉取 Map端的sh ...
- HTML5 设备上的API
一.Vibration API ,接受两种类型参数 vibrate (unsigned long time) 当参数是unsigned long的时候 此时参数表示震动时间. NotSuppor ...