Archive for 06月, 2009
Flash ActionScript3 殿堂之路笔记1
声明变量:var 变量名:数据类型
值类型 :Boolean int Number String uint
引用类型:值类型除外的数据类型
声明常量:const
int uint和Number区别:
int 支持正负,unit只处理正数,Number支持浮点数。
枚举集合:
for(var k in objects){
trace(K + objects[K]); //K为key
}
for each (var k in objects){
trace(k); // k为value
}
关于Ruby hash的排序
最近写了一个发邮件的Rake任务。
其中用到Hash来保存不同分数的数据。大致如下:data = {’a’=>’data a’, ‘b’ => ‘data b’}
在邮件内容里我用了一个each语句来遍历这个hash。
data.each |key,value| do
puts key + ‘ -> ‘ + value
end
输出如下:
a -> data a
b -> data b
现在我想把输出顺序调过来,先输出b ,再输a;
于是我将b 和 a分别先后符值。
data = {}
data['b'] = ‘data b’
data['a'] = ‘data a’
each遍历后,结果如下:
a -> data a
b -> data b
并没有按hash符值的顺序打印出来。这跟php不一样。Ruby hash符值的时候会进行排序。
利用irb测试一下, 我们可以证实这一点:
结论:
让要hash按指定的顺序输出有两个方法:
1. 转换成数组
1. 创建一个以hash的key值为值的数组,如['b','a'],再通过遍历数据,从而输出对应的hash值。
