W3Cschool
恭喜您成為首批注冊(cè)用戶(hù)
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
一般情況下我們會(huì)使用數(shù)據(jù)的基本數(shù)據(jù)類(lèi)型:byte、int、short、long、double、float、boolean、char;
對(duì)應(yīng)的包裝類(lèi)型也有八種:Byte、Integer、Short、Long、Double、Float、Character、Boolean;
包裝類(lèi)型都是用 final 聲明了,不可以被繼承重寫(xiě);在實(shí)際情況中編譯器會(huì)自動(dòng)的將基本數(shù)據(jù)類(lèi)型裝箱成對(duì)象類(lèi)型,或者將對(duì)象類(lèi)型拆箱成基本數(shù)據(jù)類(lèi)型;如下:
public static void main(String[] args) {
int num1 = 1;
//將基本數(shù)據(jù)類(lèi)型裝箱成對(duì)象包裝類(lèi)型
Integer num2 = num1;
Integer num3 = 3;
//將對(duì)象數(shù)據(jù)類(lèi)拆箱
int num4 = num3;
}
Number 類(lèi)是 java.lang 包下的一個(gè)抽象類(lèi),提供了將包裝類(lèi)型拆箱成基本類(lèi)型的方法,所有基本類(lèi)型(數(shù)據(jù)類(lèi)型)的包裝類(lèi)型都繼承了該抽象類(lèi),并且是final聲明不可繼承改變;
package java.lang;
public abstract class Number implements java.io.Serializable {
public abstract int intValue();
public abstract long longValue();
public abstract float floatValue();
public abstract double doubleValue();
public byte byteValue() {
return (byte)intValue();
}
public short shortValue() {
return (short)intValue();
}
private static final long serialVersionUID = -8742448824652078965L;
}
包裝類(lèi) | 基本數(shù)據(jù)類(lèi)型 |
---|---|
Boolean | boolean |
Byte | byte |
Short | short |
Integer | int |
Long | long |
Character | char |
Float | float |
Double | double |
這種由編譯器特別支持的包裝稱(chēng)為裝箱,所以當(dāng)內(nèi)置數(shù)據(jù)類(lèi)型被當(dāng)作對(duì)象使用的時(shí)候,編譯器會(huì)把內(nèi)置類(lèi)型裝箱為包裝類(lèi)。相似的,編譯器也可以把一個(gè)對(duì)象拆箱為內(nèi)置類(lèi)型。Number 類(lèi)屬于 java.lang 包。
下面是一個(gè)裝箱與拆箱的例子:
public class Test{
public static void main(String args[]){
Integer x = 5; // boxes int to an Integer object
x = x + 10; // unboxes the Integer to a int
System.out.println(x);
}
}
以上實(shí)例編譯運(yùn)行結(jié)果如下:
15
當(dāng)x被賦為整型值時(shí),由于 x 是一個(gè)對(duì)象,所以編譯器要對(duì)x進(jìn)行裝箱。然后,為了使x能進(jìn)行加運(yùn)算,所以要對(duì)x進(jìn)行拆箱。
Java 的 Math 包含了用于執(zhí)行基本數(shù)學(xué)運(yùn)算的屬性和方法,如初等指數(shù)、對(duì)數(shù)、平方根和三角函數(shù)。
Math 的方法都被定義為 static 形式,通過(guò) Math 類(lèi)可以在主函數(shù)中直接調(diào)用。
實(shí)例
public class Test {
public static void main (String []args)
{
System.out.println("90 度的正弦值:" + Math.sin(Math.PI/2));
System.out.println("0度的余弦值:" + Math.cos(0));
System.out.println("60度的正切值:" + Math.tan(Math.PI/3));
System.out.println("1的反正切值: " + Math.atan(1));
System.out.println("π/2的角度值:" + Math.toDegrees(Math.PI/2));
System.out.println(Math.PI);
}
}
以上實(shí)例編譯運(yùn)行結(jié)果如下:
90 度的正弦值:1.0
0度的余弦值:1.0
60度的正切值:1.7320508075688767
1的反正切值: 0.7853981633974483
π/2的角度值:90.0
3.141592653589793
Number & Math 類(lèi)方法
下面的表中列出的是常用的 Number 類(lèi)和 Math 類(lèi)的方法:
序號(hào) | 方法與描述 | |||||
---|---|---|---|---|---|---|
1 | xxxValue() 將number對(duì)象轉(zhuǎn)換為xxx數(shù)據(jù)類(lèi)型的值并返回。 |
|||||
2 | compareTo() 將number對(duì)象與參數(shù)比較。 |
|||||
3 | equals()
判斷number對(duì)象是否與參數(shù)相等。 |
|||||
4 | valueOf()
返回一個(gè)Integer對(duì)象指定的內(nèi)置數(shù)據(jù)類(lèi)型 |
|||||
5 | toString() 以字符串形式返回值。 |
|||||
6 | parseInt() 將字符串解析為int類(lèi)型。 |
|||||
7 | abs() 返回參數(shù)的絕對(duì)值。 |
|||||
8 | ceil() 返回大于等于( >= )給定參數(shù)的的最小整數(shù),類(lèi)型為雙精度浮點(diǎn)型。 |
|||||
9 | floor() 返回小于等于(<=)給定參數(shù)的最大整數(shù) 。 |
|||||
10 | rint() 返回與參數(shù)最接近的整數(shù)。返回類(lèi)型為double。 |
|||||
11 | round() 返回一個(gè)最接近的int、long型值。 |
|||||
12 | min() 返回兩個(gè)參數(shù)中的最小值。 |
|||||
13 | max() 返回兩個(gè)參數(shù)中的最大值。 |
|||||
14 | exp() 返回自然數(shù)底數(shù)e的參數(shù)次方。 |
|||||
15 | log() 返回參數(shù)的自然數(shù)底數(shù)的對(duì)數(shù)值。 |
|||||
16 | pow() 返回第一個(gè)參數(shù)的第二個(gè)參數(shù)次方。 |
|||||
17 | sqrt() 求參數(shù)的算術(shù)平方根。 |
|||||
18 | sin() 求指定double類(lèi)型參數(shù)的正弦值。 |
|||||
19 | cos() 求指定double類(lèi)型參數(shù)的余弦值。 |
|||||
20 | tan() 求指定double類(lèi)型參數(shù)的正切值。 |
|||||
21 | asin() 求指定double類(lèi)型參數(shù)的反正弦值。 |
|||||
22 | acos() 求指定double類(lèi)型參數(shù)的反余弦值。 |
|||||
23 | atan() 求指定double類(lèi)型參數(shù)的反正切值。 |
|||||
24 | atan2() 將笛卡爾坐標(biāo)轉(zhuǎn)換為極坐標(biāo),并返回極坐標(biāo)的角度值。 |
|||||
25 | toDegrees() 將參數(shù)轉(zhuǎn)化為角度。 |
|||||
26 | toRadians() 將角度轉(zhuǎn)換為弧度。 |
|||||
27 | random() 返回一個(gè)隨機(jī)數(shù)。 |
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: