1、选择判断语句
Java有几种类型的选择语句:单分支if语句、双分支if-else语句、嵌套 if 语句、多分支if-else 语句、switch 语句和条件表达式
(1)单分支if语句
…A
if(条件){ B
执行语句 C
}
…D
(2)双分支if-else语句
…A
if(条件){ B
执行语句 C
}else{
执行语句D
}
…E
(3)嵌套 if 语句
…A
if(条件1){ B
…C
if(条件2){ D
…E
}else{
…F
}
…G
}else{
…H
}
…I
(4)多分支if-else 语句
…A
if(条件1){ B
…C
}else if(条件2){ D
…E
}else{
…F
}
…G
2、循环语句:主要解决重复性的操作(计算逻辑上重复)
循环四要素:
(1)循环的初始化
(2)循环的继续条件(结束条件)
(3).循环的循环体(需要将那些部分进行循环操作)
(4)循环的步长,周期,间距
Java 提供 了三种类型的循环语句:while 循环、do-while 循环和 for 循环。
(一)for循环:具有编写循环的简明语法。
for语句,主要处理循环次数已知的情况下。
for(1初始化;2继续条件; 4步长){
3循环体
}
顺序:1-2-3-4-2-3-4-2-3-4-2-break
(二)while语句:主要处理循环次数为止的情况下
1初始化
while(2继续条件){
3循环体
4步长
}
1-2-3-4-2-3-4-2-3-4-2-break
注意:循环继续条件应该总是放在固括号内。只有当循环体只包含一条语句或不包含语句时,循环体的花括号才可以省略。
例题:
import java.util.*;
class Class12{
/**
步骤:
1、随机产生数0-100 com
2、提示用户输入数字 usr
3、分类讨论
如果usr=com,输出猜中了
如果usr>com,输出太高了,usr<com,低了
提示重新输入,然后再判断,直到usr=com
*/
public static void main(String[] args){
Random random=new Random();
int com=random.nextInt(101);
Scanner scanner=new Scanner(System.in);
System.out.println("Guess a magic number between 0 and 100");
System.out.print("Enter your guess: ");
int usr=scanner.nextInt();
if(usr==com){
System.out.print("Yes,the number is "+com);
}else{
while(true){
if(usr>com){
System.out.println("Your guess is too high");
}else{
System.out.println("Your guess is too low");
}
System.out.print("Enter your guess: ");
usr=scanner.nextInt();
if(usr==com){
System.out.print("Yes,the number is "+com);
break;}
}
}
}
}
有趣的打印**
打印*的几种情况,找行数i、*数j、空格k的关系、规律得出
在这里插入代码片class Demo01{
public static void main(String[] args){
/*
****
****
****
****
*/
for(int i=1;i<=4;i++){
System.out.println("****");
}
for(int i=1;i<=4;i++){
for(int j=1;j<=4;j++){
System.out.print("*");
}
System.out.println();
}
/*
*
**
***
****
*/
//i=1~4
for(int i=1;i<=4;i++){
for(int j=1;j<=i;j++){
System.out.print("*");
}
System.out.println();
}
/*
* 1 1
** 2 2
*** 3 3
**** 4 4
*** 5 3
** 6 2
* 7 1
*/ //后三行行数和*个数的关系:i+j=8
for(int i=1;i<=7;i++){
for(int j=1;j<=i&&j<=8-i;j++){
System.out.print("*");
}
System.out.println();
}
/* i k(4-i) j
* 1 3 1
** 2 2 2
*** 3 1 3
**** 4 0 4
*** 5 1 3
** 6 2 2
* 7 3 1
*///k表示空格数(后三行结果是负的所以取绝对值)
for(int i=1;i<=7;i++){
for(int k=1;k<=Math.abs(i-4);k++){
System.out.print(" ");
}
for(int j=1;j<=i&&j<=8-i;j++){
System.out.print("*");
}
System.out.println();
}
/* i
* 1
* * 2
* * * 3
* * * * 4
* * * 5
* * 6
* 7
*/
for(int i=1;i<=7;i++){
for(int j=1;j<=Math.abs(4-i);j++){
System.out.print(" ");
}
for(int j=1;j<=i&&j<=8-i;j++){
System.out.print("* ");
}
System.out.println();
}
/* i
* 1
* * 1 2
* * 1 2 3
* * 1 2 3 4
* * 1 2 3
* * 1 2
* 1
j==1 ||i==j||j<=8-i
*/
for(int i=1;i<=7;i++){
for(int k=1;k<=Math.abs(4-i);k++){
System.out.print(" ");
}
for(int j=1;j<=i&&j<=8-i;j++){
if(j==1 ||j==i||j==8-i){
System.out.print("* ");
}else{
System.out.print(" ");
}
}
System.out.println();
}
}
}
来源:https://blog.csdn.net/weixin_45160958/article/details/102748406