Thinking in Java第四章查漏笔记

1.分清random与Random

  • random是Math库里的静态方法,用来产生0到1之间的double类型的随机数。
  • Random是util中的一个类,通过实例化一个Random对象来产生随机数。 若创建对象时不传递参数,则会将当前时间当成随机数产生的种子(也就是参数,用于随机数的初始化值),对于特定的种子,Random产生的随机数序列总是相同的。例:
Random rand = new Random(50);

之后通过调用nextInt()或nextFloat()等方法即可。传递的参数为产生随机数的上限。

2.区分逗号操作符与逗号分隔符

  • java中唯一用到逗号操作符的地方就是for循环的控制表达式,那些语句均会独立执行.
for(int i = 0,j = 0; i < 10; i++)//通过使用逗号操作符,可以在for中同时定义多个变量。
  • 方法中参数的分隔,均为逗号分隔符。

3.Foreach

JavaSE5引入的一种更加简洁的for语法,用于数组和容器(布吉岛什么玩意)。例如:

		int[] a = new int[5];
		for(int i = 0;i < 5;i++) {
			a[i] = i*i;
		}
		for(int x : a) {       
			System.out.print(x+" ");
		}
		//通过定义一个int类型的变量x,将数组a中的元素依次取出。
		//任何类型的数组都可以使用foreach,包括任何可迭代对象*****.
		//对于String类型的字符串来说,可以使用toCharArray()方法,将字符串转为字符数组.

4.goto与标签

  • java中并没有goto,但他的实现原理与标签类似.
  • 标签
    标签是后面跟有冒号的标识符。就像Label 1: 他们通常与break和continue结合在一起使用.并且一般用于多重循环,有奇效.以双重循环为例。
label1:
	Outer_iteration{
		label2:
			Inner_iteration{
				//...
				break;
				//...
				continue;
				//...
				continue label1;
				//...
				break label1;
				...

continue label1与break label1都会同时终止两个循环,并且回到选中的标签处。但是前者会继续从外部迭代。后者不继续。。。。大抵就是这意思,,很好理解。。。

5.Switch

一句话:switch 的选择因子不能是字符串或浮点型,只能用int或char。。。。当然也可以是一个产生整数表达式。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值