顺序结构
java 最基本的结构
public static void main(String[] args) {
System.out.println("Hello1");
System.out.println("Hello2");
System.out.println("Hello3");
System.out.println("Hello4");
System.out.println("Hello5 ");
}
输出
Hello1
Hello2
Hello3
Hello4
Hello5
选择结构
if单选则结构
if(布尔表达式){
表达式 //布尔=ture 执行 否则跳过
}
Scanner scanner = new Scanner(System.in);
System.out.println("输入数据:");
String str = scanner.nextLine();
//equals判断字符串是否相等,注意不要用 == 判断字符串
if (str.equals("Hello")){
System.out.println("正确");
}
else {
System.out.println("end");
}
scanner.close();
if双选择结构
if(布尔表达式){
表达式 //布尔=ture 执行 否则跳过
}
else
{
表达式
}
if多选择结构
if(布尔表达式1){
表达式 //布尔=ture 执行 否则跳过
}
else if(布尔表达式2)
{
表达式2
}else if(布尔表达式3)
{
表达式3
}
如果一个为ture 其他不执行只执行满足条件那一个
//简单评级程序
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int score = scanner.nextInt();
if (score == 100){
System.out.println("满分");
}else if (score<100 && score>=90){
System.out.println("A");
}else if (score<90 && score>=80){
System.out.println("B");
}
else if (score<80 && score>60){
System.out.println("C");
}
else if (score<60 && score>0){
System.out.println("不及格");
}else {
System.out.println("成绩无效");
}
switch多选择结构
whlie循环
whlie(布尔表达式){
代码语句
}
do whlie循环
do{
代码块
}while(布尔表达式)
区别 : while先判断,do whlie先循环
do while 能保证至少执行一次代码
public static void main(String[] args) {
int i=0;
int sum= 0;
do {
sum=sum + i;
i++;
System.out.println(i);
}while (i<=100);
System.out.println("=====================");
System.out.println(sum);
}
结果为
101
5050
比while多执行一次do
for循环
对比while循环
int i = 1;//初始化
while(//条件判断){
循环体代码块
i++//迭代
}
for循环
for(初始化;条件判断(布尔表达式);迭代){
循环体代码块
}
for循环最先执行初始化,可以是空语句 for( ;;)
死循环格式
for循环快捷输入
(条件值).for
100.for
练习
-
1000之间5的倍数的和,每行输出三个 println 输出后换行 print输出不会换行 可以输入"/n"换行
-
for (int i = 0; i < 1000; i++) { if ((i%15) == 0){ System.out.println(i); }else if ((i%5) == 0){ System.out.print(i+" "); }
-
100以内奇数偶数和
-
for (int i = 0; i < 100; i++) { if ((i%2) != 0){ oddsum+=i; }else { evensum +=i; }
嵌套for循环
99乘法表
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(i+"*"+j+"="+(i*j)+ '\t');
}
System.out.println("\n");
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nVn1YRlY-1615043516406)(C:\Users\17699\AppData\Roaming\Typora\typora-user-images\image-20210306211120724.png)]
1*1=1
21=2 22=4
31=3 32=6 3*3=9
41=4 42=8 43=12 44=16
51=5 52=10 53=15 54=20 5*5=25
61=6 62=12 63=18 64=24 65=30 66=36
71=7 72=14 73=21 74=28 75=35 76=42 7*7=49
81=8 82=16 83=24 84=32 85=40 86=48 87=56 88=64
91=9 92=18 93=27 94=36 95=45 96=54 97=63 98=72 9*9=81
增强for循环,工作与数组相关
for(声明语句:表达式){
代码句子
}
int[] numbers = {10,20,30,40,50};
for (int x : numbers){
System.out.println(x);
}
System.out.println("分割线·······························");
for (int i = 0; i < 5; i++) {
System.out.println(numbers[i]);
}
break continue goto结束语句
break 跳出当前循环,但是不会终止程序向下运行
continue 用于终止某次大循环,多用于条件筛选
for (int i = 0; i < 100; i++) {
if (i%10 == 0){
System.out.println();
continue;
}
System.out.print(i);
}
goto变成了标签加在continue后和for前,但是goto任然是保留关键字,命名不要用