Ruby和Java之間的比較
(飛刀和雨)
1. 基本類型的比較Ruby的基本數(shù)據(jù)類型

1數(shù)值型(numeric)
Java擁有8種主治類型, Boolean,byte,char.short,int,long,float,double.在開發(fā)中我們往往只常用到boolean, char, int & double。
Ruby則巧妙的使用了2類 Fixnum和Bignum,而且ruby不需要你去定義這個數(shù)字類型,只需你輸入個數(shù),ruby會自動地進行必須的轉(zhuǎn)換。用戶不必?fù)?dān)心數(shù)字之間的差別
|
ruby
|
Java
|
字符串轉(zhuǎn)數(shù)字
|
N = ‘400’.to_i
|
N= new Integer(“400”).intValue( );
|
隨機數(shù)
|
A = rand(5)
|
Random random = new java,util.Random();
int A = random.nextInt(5);
|
Ruby提供良好的數(shù)學(xué)運算公式,這些是java.math 所不能夠比擬的
1. 對數(shù)的使用:Math.loh(1) Math.log10(1000)
2. 求矩陣算法,求解線形的方程組,復(fù)數(shù)的使用
2. 字符串類型(String)
Java中處理字符串一般都是使用String類或者StringBuffer類,而ruby的使用則更加的方便和快速。Ruby的字符串的大小是可變的。可以無需使用更多的時間和內(nèi)存。
|
ruby
|
Java
|
打印時變量帶入字符串
|
Puts “This is #{number}”
|
System.out.println(“This is ”+number);
|
字符與值轉(zhuǎn)換
|
?a è97
|
int x = (int)’a’;
|
大小寫轉(zhuǎn)換
|
s,downcase
|
s.lowerCase();
|
或得字符串部分
|
s[3.5]
|
s.indexOf(3,5);
|
3. 范圍類型。
這類的文件是java所沒有的,所以對于很多開發(fā)人員來說這是一個很新的類型,
代表了一個系列的值,當(dāng)然
使用s..e和s…e。后面的一個不包括最后一個值
(-1..-5).to_a