程序的控制结构:顺序、分支、循环
分支语句:if和switch
1.if(条件){//满足条件执行语句块}
if(num==0){
System.out.println("0");
}
if多分支:
if(条件){满足执行,不满足执行else if }else if(条件){//语句块}
if(num==0){
System.out.println("0");
}else if(num==3){
System.out.println("3");
}
switch分支:
switch(条件){//switch的条件类型只能为整形包括String类型的整数。
Case1:
语句块
break;
……
Case default:
语句块
break;
}
int week = 1;
switch (week) {
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
default:
System.out.println("错误");
break;
}
Switch中case不加break有直通特性;
default的顺序如果都有break没影响,否则有影响。
break和return的区别:
break:跳出语句块
return:结束程序和返回当前值
if和switch的区别:
1.能用switch实现的都能用if实现并且if语句的条件没有任何限制,switch只能是整型
2.if用在分支语句较少并且是一个范围
switch:较多————————整数
程序的控制结构:循环while ,for ,do while
循环的两要素1.循环条件2.循环体
while(循环条件){满足条件的循环体}
int i=1;
int sum = 0;
while(i<=3){//循环条件
//循环体
sum += i;// i = 1,sum = 1; i=2 ,sum=3;...i=100,sum += 100
i++;//i=2,i=3...i=101
}
System.out.println("sum="+sum);
while(true){//死循环和break联合使用}
System.out.println("开始跑步啦啦啦。。。");
int count = 0;
while(true){
count++;
System.out.println("已经跑了"+count+"圈了!!");
if(count == 9){
System.out.println("已经跑了9圈了,实在跑不动了");
break;
}
break和continue的区别
break:跳出整个循环
continue:结束本次循环进行下一次循环
for(变量的初始化;循环条件;循环变量更新){循环体}
for(int i=1;i<=100;i++){//变量的作用域:
sum += i;
}
Do{循环体}while(循环条件);至少循环一次
三者之间的区别:
1.while和for先执行条件判断do while先循环满不满足条件都执行一次
2.for一般用于循环次数确定的
3.for循更为简洁
迭代:(iteration)
while,for,dowhile用来控制循环有时将它们划分为迭代语句语句会重复执行直到其
控制作用的布尔表达式得到“假”的结果为止。
逗号操作符:逗号主要起到分隔符的作用;java中唯一用到逗号操作符的地方就是for循环
for(int i=1,j=i+10;i<5;i++,j=i*2){}
通过逗号操作符可以在for语句内定义多个变量必须是相同类型
Foreach语法(增强for循环)
int[] arrA = { 1, 2, 3, 4, 5, 6 };
for (int s : arrA) {
System.out.println(s);
}
标签:java中标签起作用的唯一地方就是刚好在迭代语句之前使用标签的唯一理由就是因
为有嵌套循环存在而且想从多层嵌套中break或者continue
标签的后面跟有冒号标识符:如 aaa:
案例:九九乘法表
for(int i=1;i<=9;i++){//代表行号
for(int j=1;j<=i;j++){//代表列号
System.out.print(j+"*"+i+"="+(j*i)+" ");
}
System.out.println();//换行
}
System.out.println("------------------------------------");
//用while循环打印九九乘法表
int i=1;
while(i<=9){
int j = 1;
while(j<=i){
System.out.print(j+"*"+i+"="+(j*i)+" ");
j++;
}
i++;
System.out.println();
}
递归算法
数 幽 身 直 接 或 者 间 接 的 调 用 到 了 自 身 。
一 个 功 能 在 重 复 使 用 , 并 每 次 使 用 时 , 参 与 运 算 的 结 果 和 上 一 次 调 用 有 关 。
这 时 可 以 用 递 归 来 解 决 问 题 。
注意:
1 , 递 归 一 定 明 确 条 件 。 否则 容 易 栈 溢 出 。
2 · 注 意 一 下 递 归 的 次 数 。
Public static int getSum (int num) {
if (num= = 1)
return 1 ;
return num+getSum (num—I )
}
网友评论