黑马程序员Java基础之流程控制(control)

原创 2012年03月28日 11:27:17

 ---------------------- 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)则不执行。

循环的应用更多有forwhlie,在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++;
		}
	}
}

总结:最后一个跳转语句是用于终止循环的。有breakcontinue,区别在于前者终止整个循环后者终止本循环。

感受:无论分支还是循环都会在算法中得到体现,Java中那么多知识点固然要一个个掌握,但一个问题摆在面前还是要先考量其算法,

在用结构实现算法解决问题,所以我就很欣赏黑马教程里的三道应用题(交通Lamp、银行业务调度、移动计费)把实际问题摆在台面上,

这比枯燥的讲知识点有意思多了

 ---------------------- android培训java培训、期待与您交流! ----------------------
详细请查看:http://edu.csdn.net/heima

黑马程序员——Java基础测试题

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 黑马程序员——Java基础测试题 第1题:以下代码哪个是正确的?为什么?   a. byte...
  • liu007004
  • liu007004
  • 2015年01月16日 12:49
  • 1431

黑马程序员——Java基础---练习题

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- Java基础---练习题 1.写出程序结果class Demo { public stat...
  • liu007004
  • liu007004
  • 2015年01月19日 16:35
  • 702

流程控制--分支结构

Java提供了两种常见的分支控制结构,if语句和switch语句。 其中if语句使用boolean表达式或boolean值作为分支条件来进行分支控制, 而switch语句则用于对多个整形值进行匹配...
  • u011794238
  • u011794238
  • 2016年05月10日 16:49
  • 772

黑马程序员--Java基础面试题整理

------- android培训、java培训、期待与您交流! Java面试题整理(自己学习过程中整理的重点题目,为面试做准备) 编程基础 1.(面试题): ...
  • wwj101004
  • wwj101004
  • 2014年10月31日 23:09
  • 816

JAVA基础知识: 流程控制习题答案

第一题: 有 36 人 36 块板砖,男人每人般 4 块,女人每人搬 3 块,小孩每 2 人搬 1 块。36 人都搬了一次,把砖刚好搬晚,问:几男几女的几个小孩? int na...
  • Spark2008
  • Spark2008
  • 2015年03月23日 09:19
  • 1728

传智 刘意 2015年Java基础视频-深入浅出精华版 笔记 day24~day26(2016年4月26日13:11:30)

day24 1.多线程(JDK5之后的Lock锁的概述和使用)   Lock:           void lock(): 获取锁。           void unlock():释放锁。 ...
  • juliantem
  • juliantem
  • 2016年04月15日 00:40
  • 5017

黑马程序员_我的Linux基础整理笔记

Linux Linux文件目录和分区 文件目录: /:根目录 /root:存放root用户的相关文件 /home:存放普通用户的相关文件 /bin:存放普通用户的可执行命令 /sbin:...
  • zhengzhongjie1990
  • zhengzhongjie1990
  • 2014年07月05日 17:08
  • 1660

黑马程序员--【阳哥笔记】Java基础之笔记系列(全)

------- android培训、java培训、期待与您交流! ---------- 【阳哥笔记】Java基础之笔记系列(全) http://bbs.itheima.com/thread-20...
  • MH_LZX001
  • MH_LZX001
  • 2015年10月20日 21:25
  • 577

黑马程序员—零基础到面试——全过程分享

文章来源:黑马程序员,黑马论坛
  • heima_271
  • heima_271
  • 2014年08月25日 23:38
  • 949

黑马程序员C/C++——2016势如破竹,2017乘风破浪!

一、回望2016,火力全开的C/C++学院接连创造辉煌! 0105C/C++就业班在毕业16日的时候,就业人数过半,最可怕的是薪资过万的同学比例逼近80%!北上广深平均薪资达到11365元! ...
  • itcast_cn
  • itcast_cn
  • 2017年01月19日 16:05
  • 1712
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:黑马程序员Java基础之流程控制(control)
举报原因:
原因补充:

(最多只允许输入30个字)