4.1复合语句
public class Compound{
pubilc static void main(String args[]){
int x=20;//定义一个变量x
{
int y=40;//定义一个变量y
System.out.println(y);//输出变量y
int z=245;//定义变量z
boolean b;
{
b=y>z;
System.out.println(b);//输出
}
}
String word ="hello java";
System.out.println(word);//输出
}
}
条件语句:条件语句可根据不同的条件执行不同的语句。条件语句包括If条件语句与switch多分支语句句。
4.2.1 IF条件语句:if条件语句是一个重要的编程语句,用于告诉程序在某一个条件成立的情况下执行某段语句。而在另一种情况下执行另外的语句。
public class liti4_1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int phoneNumber = 123456789; //定义一个int型变量phoneNumber并赋值123456789
if (phoneNumber != 84972266) { //判断phoneNumber是否为84972266
System.out.print("对不起,您拨打的号码不存在!"); //输出
}
}
2.if...else语句:if...else语句设条件语句中最常用的一种形式,他会针对某种条件有选择地作出处理。通常表现为“如何满足某种条件就进行某种处理,否则就进行另一种处理。”
if(条件表达式){
语句序列1
}else{
语句序列2
}
4.2
public class liti4_2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int password = 987654321; //定义int型password赋值987654321
if(123456789 == password) { //判断password是否为123456789
System.out.print("密码正确,欢迎登录"); //正确时的输出
}else { //否则
System.out.print("密码错误,拒绝登录");//错误时输出
}
}
}
3.if...else if多分支语句:if...else if多分支语句用于针对某一事件的多种情况进行处理。通常表现为。如果满足某种条件进行某种处理,就进行某种处理,否则如果满足另一种条件就执行另一种处理。
if(条件表达式1){
语句序列1
}else if(条件表达式2){
语句序列2
}
...
else if (条件表达式n){
语句序列n
}
public class liti4_3 {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("欢迎光临,请问有多少人用餐?");//输出
int count = 9; //定义一个int型变量count赋值9
System.out.println("回答:"+ count + "人"); //输出
if(count <= 4) { //判断如果count小于或等于4则输出下行代码
System.out.println("客人请到大厅4人桌用餐");//输出
}else if(count > 4 && count <= 8) { //否则如果count大于4并且小于或等于8则输出下行代码
System.out.println("客人请到大厅8人桌用餐");
}else if(count > 8 && count <= 16) {
System.out.println("客人请到楼上包厢用餐");
}else { //否则输出下行代码
System.out.print("抱歉,我们目前没有那么大的包厢");
}
}
}
switch多分支语句:在编程中,一个常见的问题就是检测一个变量是否符合某个条件。如果不符合,再用另一个词来检测,以此类推。当然,这种问题使用If条件语句也可以完成。
if(grade=='A'){
System.out.println("真棒");
}
if(grade=='B'){
System.out.println("做得不错");
}
语法:
switch(){
case 常量值1:
语句块1
[break;]
...
case 常量值n:
语句块n
[break;]
default:
语句块n+1;
[break;]
}
4.4莉;
import java.util.Scanner;
public class liti4_4 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);//打开键盘扫描器接收输入的数据
System.out.print("请输入成绩:"); //输出
int grade = sc.nextInt(); //将输入的数据存如int型变量grade里
switch(grade) { //计算表达式
case 10: //常量值为10
case 9:
System.out.print("成绩为优");//如果常量值为10,9则输出该行代码
break; //如果case开始执行,遇到break则停止
case 8:
System.out.print("成绩为良");
break;
case 7:
case 6:
System.out.print("成绩为中");
break;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:
System.out.print("成绩为差");
break;
default: //如果以上case常量值均与表达式的值不同,则执行default后的代码
System.out.print("成绩无效");
}
sc.close(); //关闭扫描器
}
}
4.3.循环语句:循环语句就是在满足一定条件的情况下,反复执行某一种操作的语句。 Java中提供了三种常用的循环语句。分别是while循环语句,do while循环语句和for循环语句。
1.while循环语句:while语句也称条件判断语句,它的循环方式为利用一个条件来控制是否要继续反复执行这个语句。
while(条件表达式){
语句序列
}
4.5,
public class liti4_5 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int x = 1; //定义一个int型变量x赋值1
int sum = 0; //定义一个int型变量sum赋值0
while(x <= 1000) { //判断x是否小于或等于1000
sum = sum + x; //sum表达式
x ++; //x自增
}
System.out.print("sum = "+ sum);//输出
}
}
4.3.2do...while循环语句:do while语句与while语句循环语句类似,它们之间的区别是while语句为先判断条件是否成立,再执行循环体。而do while循环语句则先执行一次,循环后再判断条件是否成立,也就是说do while循环语句“{}”中的程序段至少要被执行一次。
语法:do{
语句序列
}while(条件表达式);
4.6例题:
import java.util.Scanner;
public class liti4_6 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in); //打开键盘扫描器接收输入的数据
int password; //定义一个int型变量passdword
do { //先执行一遍
System.out.print("请输入6位数字密码:");
password = sc.nextInt(); //将输入的数据存如int型变量passdword里
}while(931567 != password); //判断条件是否成立
System.out.print("登录成功");
sc.close();
}
}
for循环语句: for
循环是将我程序设计中最有用的循环语法之一。一个for循环可以来重复执行某条语句。直到某个条件得到满足。for循环由两种语句一举是传统与from语句。一种是foreach语句。
4.4.4
public class liti4_8 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int arr[] = {5,13,96}; //一维整型数组
System.out.println("一维数组中的元素分别为:");
//x的类型与arr元素的类型相同。for循环依次去除arr中的值并赋值给x
for (int x: arr) {
System.out.println(x);//输出遍历中的元素值
}
}
}
4.4循环控制 :循环控制包含两方面的内容。一方面是控制循环变量的变化方法,另一方面是控制循环的跳转。控制循环的太短,需要用到break和continue两个关键词,这两个跳转语句的跳转效果不同,break语句是中断循环,continue语句是执行下一次循环。
4.4.1break;语句:使用break语句可以跳出switch结构。在循环语句结构中,同样也可用break语句跳出当前循环体,从而中断当前循环。
4.9例题:
public class liti4_9 {
public static void main(String[] args) {
// TODO Auto-generated method stub
for(int i = 1;i < 20;i ++) {
if(i%2 == 0) { //如果i是偶数
System.out.println(i);//输出i的值
break; //结束循环
}
}
System.out.println("---end---");//结束时输出一行文字
}
}
4.10例题;
public class liti4_10 {
public static void main(String[] args) {
// TODO Auto-generated method stub
for(int i = 1;i <=3;i ++) { //外层循环
for(int j = 1;j <= 5;j ++) { //内层循环
if(j == 4) { //内层循环至第四次时就结束
break;
}
System.out.println("i="+ i +" j="+ j); //输出i和j的值
}
}
}
}
while(...){
...
continue;
...
}
///
do{
... continue;
...
}while(...);
///
for{
...
continue;
...
}
continue语句:是针对break的补充,continue不是立刻跳出循环体,而是跳出本次循环,回到循环的条件测试部分,重新开始循环。在for循环语句中遇到continue后,首先执行循环的增量部分,然后进行条件测试。在while和do while循环中,continue语句使控制直接回到条件测试部分。
4.11例题
public class liti4_11 {
public static void main(String[] args) {
// TODO Auto-generated method stub
for (int i = 1;i <= 20;i ++) {
if(i %2 == 0) { //如果i是偶数
continue; //跳到下一循环
}
System.out.println(i);//输出i的值
}
}
}