文章目录
顺序分支循环
顺序结构
程序从上到下逐行地执行,中间没有任何判断和跳转。
分支结构
根据条件,选择性地执行某段代码。 有if…else和switch两种分支语句。
实例1.
// 如果是数字1,输出星期一,2输出星期二,3就输出星期三,如果不是1,2,3中的任何一个数字,就输出不知道星期几
int i = 10;
//
if(i == 1)
{
System.out.println("星期一");
}else if(i == 2)
{
System.out.println("星期二");
}else if(i == 3)
{
System.out.println("星期三");
}else
{
System.out.println("不知道星期几"); }
可以用if else 解决的,就少用switch case
if和switch语句很像,具体什么场景下,应用哪个语句呢?如果判断的具体数值不多,而且符合byte、 short 、int、char这四种类型。虽然两个语句都可以使用,建议使用swtich语句。因为效率稍高。
其他情况:对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广。
循环结构
根据循环条件,重复性的执行某段代码。 有while、do…while、for三种循环语句。
三种循环 实例1
public class Test
{
public static void main(String[] args)
{
//while 循环先初始化,如果是true,执行大括号里的,否则不执行
int i = 0;
while(i<100)
{
System.out.println(i);
i ++;
}
//for循环,初始化;条件;变量值改变
for(int k = 1; k<100; k++)
{
System.out.println(k);
}
//do while 循环至少执行一次
int m = 1;
do
{
System.out.println(m);
m ++;
}
while(m<100);
}
}
循环语句四部分
初始化部分
循环条件部分
循环体部分
迭代部分
for循环
语法格式:
for (初始化表达式①; 布尔值测试表达式②; 更改表达式)
{
语句或语句块③;
}
实例1,for循环打印水仙花数
所谓水仙花数是指一个3位数,其各个位上数字立方和等于其本身。 eg: 153 = 111 + 333 + 555
public class Test3
{
public static void main(String[] args)
{
//判断是不是水仙花数
for (int i= 100; i < 999; i++)
{
int m = i/100;
int n = (i - m*100)/10;
int k = i- m*100- n*10;
int ans = m*m*m + n*n*n +k*k*k; //java里无m**3,这点和python不同
if (ans == i)
{
System.out.println(i);
}
}
}
}
while循环结构
[初始化语句]
while( 布尔值测试表达式)
{
语句或语句块;
[更改语句;]
}
do-while 循环语句
至少执行一次
[初始化语句]
do
{
语句或语句块;
[更改语句;]
}while(布尔值测试表达式);
嵌套循环
嵌套循环不难,
循环次数=-外层循环*内层循环
设外层循环次数为m次,内层为n次,则内层循环体实际上需要执行m*n=mn次
实质:
嵌套循环就是把内层循环当成外层循环的循环体。当只有内层循环的循环条件为false时,才会完全跳出内层循环,才可结束外层的当次循环,开始下一次的循环。
实例1,99乘法口诀表
public class Test4
{
public static void main(String[] args)
{
//99乘法口诀表
for(int i = 1; i <= 9; i++)
{
for(int j = 1; j <= i; j++)
{
System.out.print(i + " * " + j + " = " + (i * j) + " "); //print不换行
}
System.out.println(); //println换行。可以输出为空
}
}
}
这里要注意,print 和println的区别
print不换行
println换行
天天学习,每天进步一点点!