---------------------- android培训、java培训、期待与您交流! ----------------------
基础要点
1、 控制中的三种结构
2、 算法在流程控制中的应用
3、 Jdk1.5中的增强for循环
for的应用之冒泡排序
/**for应用之冒泡排序
* 从一组数种获取最大
*/
public class CycleAplication {
public static void main (String arg[]){
int a[] = {1,6,9,7};
int i,temp;
//两个一比较4格数要比三次
for(i=0;i<=3;i++){
//如果第一个数大于第二个,换位置
if(a[i]<a[i+1])
temp = a[i+1];
else
temp = a[i];
a[i+1] = temp;
}
//输出最大数
System.out.println(a[i+1]);
}
}
swtich应用之根据等级显示成绩
/**swtich应用
* 根据等级显示成绩
* 设:90分以上为A,80分以上为B,70分以上为C,60分以上为D,60分以下为E
*/
public class BranchAplication {
public static void main(String[] args) {
//满分为100
int score = 100;
//分数/100就把等级分开,依次输出
switch(score/10){
case 9: System.out.println("A");break;
case 8: System.out.println("B");break;
case 7: System.out.println("C");break;
case 6: System.out.println("D");break;
case 5: System.out.println("E");break;
default: System.out.println("Error!");
}
}
}
总结:分支主要用于判断条件是否满足,真(ture)则执行其下语句假(flase)则不执行。
循环的应用更多有for、whlie,在jdk1.5中有假了增加for。
名称 | 普通for | 增强for | whlie | do。。。whlie |
特点 | 可控下标操作元素 | 一次性遍历里所有元素 | 先计算后执行 | 先执行后计算 |
经典题目1:九九乘法表
public class chengfabiao {
public static void main(String[] args) {
//定义两个变量用于内外循环
int i=0,j=0;
//第一行输出9个数
for(i=1;i<10;i++)
System.out.println(i+" ");
System.out.println("\n----------------\n");
//这里用到的嵌套循环
for(i=1;i<10;i++){
for(j=1;j<=10;j++)
//由j控制一行一行输出乘法表的内容
System.out.println(i*j+" ");
System.out.println("\n");
}
}
}
经典题2:百钱买百鸡
/**下面是古代数学家张丘建在他的《算经》中提到的问题
* 鸡翁一,值钱五;母鸡一,值钱三;鸡雏三,值钱一;
* 百钱买百鸡,翁,母,雏各几何?
*/
public class maiji {
public static void main(String[] args) {
int cocks = 0,hens = 0,chicks = 0;
//100/5就是最多能买的鸡翁数,这也是最外层whlie循环的条件
while(cocks<=25){
//100/3是最多能卖母鸡的数,也是第二层循环的条件
while(hens<=33){
chicks = 100-cocks-hens;
if((5*cocks+3*hens+chicks/3)==100&&(chicks%3==0))
System.out.println(cocks+hens+chicks);
//母鸡增加再次计算小鸡
hens++;
}
//鸡翁增加再次计算母鸡和小鸡
cocks++;
}
}
}
总结:最后一个跳转语句是用于终止循环的。有break,continue,区别在于前者终止整个循环后者终止本循环。
感受:无论分支还是循环都会在算法中得到体现,Java中那么多知识点固然要一个个掌握,但一个问题摆在面前还是要先考量其算法,
在用结构实现算法解决问题,所以我就很欣赏黑马教程里的三道应用题(交通Lamp、银行业务调度、移动计费)把实际问题摆在台面上,
这比枯燥的讲知识点有意思多了
---------------------- android培训、java培训、期待与您交流! ----------------------
详细请查看:http://edu.csdn.net/heima