Java 6 语句
嵌套分支
最好不要超过三层
Switch分支
// 表达式对应一个值
switch(表达式){
case 常量1:
// 代码块1
break;
case 常量2:
// 代码块2
break;
default:
// 代码块default
break;
}
细节:
- 表达式和常量要么类型一致,要么可以自动转换
- 表达式中的返回值必须是
byte
,short
,int
,char
,enum
,String
- default是可选的
for循环
// 执行次数 = 循环条件为假时循环变量的值 - 循环变量初始值
for(循环变量初始化; 循环条件; 循环变量迭代){
// 循环体
}
细节:
-
循环条件返回一个boolean
-
int i = 1; for(; i<=10; ){ i++; }
-
int count = 3; for (int i = 0, j = 0; i < count; i++, j+=2){ }
-
先判断再执行
while循环
循环变量初始化
while(循环条件){
// 循环体
// 循环变量迭代
}
细节:
- 先判断再执行
do-while循环
循环变量初始化
do{
// 循环体
// 循环变量迭代
}while(循环条件)
细节:
- 先执行再判断(至少执行一次)
嵌套循环
一般两层,最多三层
break跳转
hello:{
abc:{
break hello;
}
}
细节:
- break可以指定退出哪层
- 一般不用
- 没有标签默认跳出最近的循环体
continue
退出当前这一次循环,开始下一次循环
label1:{
label2:{
continue label1;
}
}
和break一样
练习
金字塔
public class Stars {
public static void main(String[] args) {
// 循环输出每一行
for (int line = 0; line<6; line++){
String kg = " ";
String stars = "*";
// 循环输出空格
int num = 4-line;
while(num>0){
kg += " ";
num--;
}
// 循环输出*
int star = line*2+1;
while(star>1){
stars += "*";
star--;
}
// 最后一行不用输出空格
if(line == 5){
System.out.println(stars);
}else{
System.out.println(kg + stars);
}
}
}
}
for(int line = 1; line < 6; line++){ // line表示行
// 打印空格,不换行
for (int kg = 5-line; kg>0; kg--){
System.out.print(" ");
}
// 打印stars,不换行
for (int stars = line*2-1; stars>0; stars--){
System.out.print("*");
}
// 换行
System.out.println("");
}
D:\Java_code>java Test
*
***
*****
*******
*********
***********
空心金字塔
public class Starsair {
public static void main(String[] args) {
//
for (int line = 0; line<6; line++){
String kg = " ";
String stars = "*";
//
int num = 4-line;
while(num>0){
kg += " ";
num--;
}
//
int star = line*2+1-1;
while(star>1){
stars += " ";
star--;
}
stars += "*";
if(line == 5){
System.out.println("***********");
}else if(line == 0){
System.out.println(kg + "*");
}else{
System.out.println(kg + stars);
}
}
}
}
D:\Java_code>java Test
*
* *
* *
* *
* *
***********
public class StarsAir {
public static void main(String[] args) {
//
int totalNum = 10;
for(int line = 1; line <= totalNum; line++){
//
for (int kg = totalNum-line; kg>0; kg--){
System.out.print(" ");
}
//
for (int stars = line*2-1; stars>0; stars--){
// 第一个位置,最后一个位置,最后一行输出*
if(stars == line*2-1 || stars == 1 || line==totalNum){
System.out.print("*");
}else{
System.out.print(" ");
}
}
//
System.out.println("");
}
}
}
水仙花数
public class Flower {
public static void main(String[] args) {
int num = 150;
int sum = 0;
for(int temp = num; temp>0;temp/=10){
int a =temp%10;
sum += a*a*a;
}
if(sum == num) System.out.println("yes");
else System.out.println("no");
}
}
注意分数!!!
public class Test {
public static void main(String[] args) {
// ***
double sum = 0;
for(int i = 1; i<=100; i++){
// ***
double unit = 1.0/i;
if(i%2 == 0) sum -= unit;
else sum +=unit;
}
System.out.println(sum);
}
}
标签:语句,Java,int,System,循环,stars,line,out
From: https://www.cnblogs.com/wxrwajiez/p/18449097