文章目录JAVA的基本结构就是顺序结构,除非特别指明,否则就按照一句一句来执行
- 顺序结构
- 选择结构
- if单选择结构
- if双选择结构
- if多选择结构
- 嵌套的if结构
- Switch多选择结构
- 循环结构
- while循环
- do...while循环
- For循环
- 增强For循环
- break
- continue
- goto
- 打印三角形
if单选择结构当满足一条布尔表达式后,其余布尔表达式将不再执行
if(布尔表达式){
//如果布尔表达式为true,将执行这里的语句;
}
if双选择结构
if(布尔表达式){
//如果布尔表达式为true,将执行这里的语句,其后不再执行;
}
else{
//如果布尔表达式为false,将执行这里的语句;
}
if多选择结构
if(布尔表达式1){
//如果布尔表达式1为true,将执行这里的语句,其后不再执行;
}
else if(布尔表达式2){
//或者布尔表达式2为true,将执行这里的语句,其后不再执行;
}
else if(布尔表达式3){
//或者布尔表达式3为true,将执行这里的语句,其后不再执行;
}
else{
//当以上布尔表达式为false,将执行这里的语句;
}
嵌套的if结构
if(布尔表达式1){
//如果布尔表达式1为true,将执行这里的语句;
if(布尔表达式2){
//当满足表达式1时且同时满足表达式2时,才会执行这里的语句;
}
}
Switch多选择结构
通过expression的值与value之间匹配进行选择
switch(expression){
case value:
//语句
break; //可选
case value:
//语句
break; //可选
//可以有任意数量的case语句
default://可选
//语句
}
- expression:值可为byte、short、int、char、String类型(JAVASE 7前 不支持String)
- value:必须为字符串常量或者字面量
- break:退出switch语句执行,防止多个case执行
- default:当exp的值与value都不匹配时执行该语句
扩展:String类型其实是通过哈希值来实现选择结构的
循环结构
三种循环结构
- while循环
- do…while循环
- for循环
while算是最基本的循环结构
语法:
while(布尔表达式){
//循环内容
}
-
只要布尔表达式为true,循环就会一直执行下去
-
大多数情况下,是需要一个结束表达式来结束循环,避免造成死循环
do…while和while最大的区别是:
do…while至少执行一次代码语句
语法:
do{
//代码语句
}while(布尔表达式);
- 执行一次do语句后,当布尔表达式为true才会再次循环
for循环是支持迭代的一种通用结构,最灵活,最有效
for循环执行次数是在执行前就确定的
和c语言的一毛一样
语法:
for(初始化;布尔表达式;更新语句){
//代码语句;
}
//例
for(i=0;i<10;i++){
//代码语句;
}
-
初始化、表达式、更新语句可以是空语句
-
当布尔表达式为true执行代码语句
-
执行完代码语句后,会执行更新语句
-
有了更新语句,有效避免死循环
java5 才引用的一种主要用于数组和集合的循环
用于遍历数组和集合的元素
语法:
for(声明语句 : 表达式){
//代码语句;
}
//例:
int[] numbers = {1,2,3}; //定义数组
for(int x : numbers){
System.out.println(x);
}
//执行结果
//1
//2
//3
-
声明语句:声明新的局部变量,该变量类型必须和数组元素的类型相匹配
-
表达式:表达式是要访问的数组的名,或是返回值为数组的方法
break 是保留字,其作用是终止所在层的循环
for(i=0;i<0;i++){
if(i=2){
break;
}
System.out.println(i);
}
//执行结果
//0
//1
//2
//当满足if条件时执行break,退出循环
-
用于强行退出循环
-
break语句可以在switch中使用
用于跳出一次循环语句
for(i=0;i<0;i++){
if(i=2){
continue;
}
System.out.println(i);
}
//执行结果
//0
//1
//3
//4
//5
//当满足if条件时,立即退出本次循环
goto
打印三角形尽管java还保留goto这个保留字,但并未在语言中正式使用
不建议使用
小训练
for(int i=1;i<=5;i++){
for(int j=5;j>i;j--){
System.out.print(" ");
}
for(int x = 1;x<=i;x++){
System.out.print("*");
}
for(int y=1;y
System.out.print("*");
}
System.out.println();
}
//输出结果
*
***
*****
*******
*********



