在 Groovy 中,數(shù)字實(shí)際上表示為對(duì)象,它們都是類(lèi) Integer 的一個(gè)實(shí)例。要使對(duì)象做某事,我們需要調(diào)用在其類(lèi)中聲明的一個(gè)方法。
Groovy 支持整數(shù)和浮點(diǎn)數(shù)。
Groovy 中的數(shù)字示例如下所示 -
Integer x = 5; Float y = 1.25;
其中 x 是整數(shù)類(lèi)型,y 是浮點(diǎn)數(shù)。
Groovy 中的數(shù)字被定義為對(duì)象的原因通常是因?yàn)榇嬖趯?duì)數(shù)字執(zhí)行操作的要求。在原始類(lèi)型上提供類(lèi)的概念被稱(chēng)為包裝類(lèi)。
默認(rèn)情況下,Groovy 中提供了以下包裝程序類(lèi)。
包裝類(lèi)的對(duì)象包含或包裝其各自的基本數(shù)據(jù)類(lèi)型。將原始數(shù)據(jù)類(lèi)型轉(zhuǎn)換為對(duì)象的過(guò)程稱(chēng)為裝箱,這由編譯器負(fù)責(zé)。將對(duì)象轉(zhuǎn)換回其對(duì)應(yīng)的基本類(lèi)型的過(guò)程稱(chēng)為取消裝箱。
以下是裝箱和拆箱的例子
class Example { static void main(String[] args) { Integer x = 5,y = 10,z = 0; // The the values of 5,10 and 0 are boxed into Integer types // The values of x and y are unboxed and the addition is performed z = x+y; println(z); } }
上述程序的輸出將為 15.在上述示例中,5,10 和 0 的值相應(yīng)地首先嵌入到整數(shù)變量 x,y 和 z 中。上述程序的輸出將是15。然后,當(dāng)執(zhí)行 x 和 y 的添加時(shí),值從其整數(shù)類(lèi)型取消裝箱。
由于 Groovy 中的 Numbers 表示為類(lèi),以下是可用的方法列表。
序號(hào) | 方法和描述 |
---|---|
1 | xxxValue() 此方法接受 Number 作為參數(shù),并基于調(diào)用的方法返回基本類(lèi)型。 |
2 | compareTo() compareTo 方法是使用比較一個(gè)數(shù)字與另一個(gè)數(shù)字。如果要比較數(shù)字的值,這是有用的。 |
3 | equals() 該方法確定調(diào)用方法的 Number 對(duì)象是否等于作為參數(shù)傳遞的對(duì)象。 |
4 | valueOf() valueOf 方法返回保存所傳遞的參數(shù)的值的相關(guān) Number 對(duì)象。 |
5 | toString() 該方法用于獲取表示 Number 對(duì)象的值的 String 對(duì)象。 |
6 | parseInt() 此方法用于獲取某個(gè) String 的原始數(shù)據(jù)類(lèi)型。 parseXxx()是一個(gè)靜態(tài)方法,可以有一個(gè)參數(shù)或兩個(gè)參數(shù)。 |
7 | abs() 該方法給出了參數(shù)的絕對(duì)值。參數(shù)可以是 int,float,long,double,short,byte。 |
8 | ceil() 方法 ceil 給出大于或等于參數(shù)的最小整數(shù)。 |
9 | floor() 方法 floor 給出小于或等于參數(shù)的最大整數(shù)。 |
10 | rint() 方法 rint 返回值最接近參數(shù)的整數(shù)。 |
11 | round() 方法 round 返回最接近的 long 或 int,由方法返回類(lèi)型給出。 |
12 | min() 該方法給出兩個(gè)參數(shù)中較小的一個(gè)。參數(shù)可以是 int,float,long,double。 |
13 | max() 該方法給出了兩個(gè)參數(shù)的最大值。參數(shù)可以是 int,float,long,double。 |
14 | exp() 該方法返回自然對(duì)數(shù)e的底數(shù)為參數(shù)的冪。 |
15 | log() 該方法返回參數(shù)的自然對(duì)數(shù)。 |
16 | pow() 該方法返回第一個(gè)參數(shù)的值增加到第二個(gè)參數(shù)的冪。 |
17 | sqrt() 該方法返回參數(shù)的平方根。 |
18 | sin() 該方法返回指定 double 值的正弦值。 |
19 | cos() 該方法返回指定 double 值的余弦值。 |
20 | tan() 該方法返回指定 double 值的正切值。 |
21 | asin() 該方法返回指定 double 值的反正弦值。 |
22 | acos() 該方法返回指定 double 值的反余弦值。 |
23 | atan() 該方法返回指定 double 值的反正切。 |
24 | atan2() 該方法將直角坐標(biāo)(x,y)轉(zhuǎn)換為極坐標(biāo)(r,theta),并返回theta。 |
25 | toDegrees() 該方法將參數(shù)值轉(zhuǎn)換為度。 |
26 | toRadians() 該方法將參數(shù)值轉(zhuǎn)換為弧度。 |
27 | random() 該方法用于生成介于0.0和1.0之間的隨機(jī)數(shù)。范圍是:0.0 = <Math.random <1.0。通過(guò)使用算術(shù)可以實(shí)現(xiàn)不同的范圍。 |
更多建議: