java常用類與方法
一.實驗名稱:
掌握java的十五個常用類
二.實驗目的:
掌握JAVA常用類,包括Scanner類,System類,String類,Arrays類,Integer類,Long類,Short類,Boolean類,Byte類,Character類,Double類,Float類,DecimalFormat類,Math類,Random類,BigInteger類,BigDecimal類。
學習java的基本使用方式,熟練掌握java的操作方式。
發掘java語言和其他語言的相同之處,高效學習。
三. 實驗平臺:
Windows 8.164bit平臺 JDK8 eclipse
四. 實驗過程和結果分析:
(一),Scanner類
Scanner 類可以用來從鍵盤讀取,可以輸入任意型別的字串,基本資料型別。
編寫如下程式碼:
執行結果:
(二)。System類
System類位於java.lang包中,它是系統類,包含三個成員變數,分別是in,out,err,
一個是獲取當前系統的時間從而可以利用時間差求得程式的執行時間。
一個是可以直接獲得本系統的屬性
程式執行結果如下:
由程式結果可知本計算機的系統環境是windows8,程式執行時間為1;
(三)String類
可以通過java.lang包中的String類,在Java中將字串作為物件來處理。
以下程式碼使用其中string類的其中兩個方法,分別是大小寫轉換和統計長度。
程式執行結果:
輸入的字串為HELLO AHU,length返回長度,所以共計9個字元,tolowcase小寫轉換為hello ahu;
(四)Arrays類
使用Arrays類的方法需要用到Java.util包,包中包含了很多關於陣列操作的方法
編寫程式碼引用排序和索引位置的方法。
執行結果如下:
Sort輸出陣列從小到大的排列順序,binarysearch利用二分的方法找到3在陣列中的位置。如圖所示。
(五)Integer類
Integer 類在物件中包裝了一個基本型別 int 的值。Integer 型別的物件包含一個 int 型別的欄位。此外,該類提供了多個方法,能在 int 型別和 String 型別之間互相轉換,還提供了處理 int 型別時非常有用的其他一些常量和方法。下面程式碼列舉三個方法,分別是Integer轉化為int型別和字串轉化為int型,還有一個是輸出給定進位制數值的十進位制形式。
實驗程式執行結果如下IntValue為Integer轉化為int,ParseInt是將字串轉化為int型,也可以輸出給定進位制數值的十進位制形式。
(六) Long 類
Java.lang包中的Long類,將基本型別long封裝成一個類,它是Number的子類,Long類在物件中包裝了一個基本型別long的值。此外,該類提供了多個方法,能在long型別和String型別之間互相轉換,還提供了處理long型別時非常有用的其他一些常量和方法。下面列舉兩種方法。
A.compareTo(long another Long),在數字上比較兩個Long物件,如果這兩個值相等,則返回0,如果呼叫物件的值小於anotherLong的值,則返回負值,如果呼叫物件的數值大於anotherLong的數值,則返回正值。
B. parseLong(String str)方法。該方法返回與呼叫該方法的數值字串相應的長整數(返回值為long)。
編寫以下程式碼:
執行結果如下:
由於a>b,所以輸出1,陣列元素之和為620
(七)Short 類
Java.lang包中的Short類,將基本型別short封裝成一個類,它是Number的子類,Short類在物件中包裝了一個基本型別short的值。此外,該類提供了多個方法,能在short型別和String型別之間互相轉換,還提供了處理short型別時非常有用的其他一些常量和方法。下面闡述兩種方法。
1,equals(Object ShortObj)方法,該方法是用於比較此物件與指定物件是否相等。返回值是boolean型別的值。
2,valueOf(String str)方法,該方法返回儲存制定制定String值的Short物件。
程式執行結果:
因為5不等於7,所以返回false。
輸出short型78
(八)Boolean類
java.lang.Boolean類封裝了一個值物件的基本布林型。 Boolean型別的物件包含一個單一的欄位中,其型別為布林值。
類宣告
以下是一個java.lang.Boolean類的宣告:
public final class Boolean
extends Object
implements Serializable,Comparable
在此列舉兩個類方法:
1 |
boolean booleanValue() |
2 |
int compareTo(Boolean b) |
編寫程式碼如圖:
執行結果如下圖:
第一個是返回這個布林變數的原始值,第二個則是比較兩個布林變數,返回負數表示此物件表示false,引數表示true。
(九) Byte 類
java.lang.Byte類的基本型別byte值包裝在一個物件中。 Byte型別的一個物件,包含一個單一的欄位,它的型別是位元組。
屬性:
· static byte MAX_VALUE -- 保持的最大的值,可以有一個位元組,這是恆定,最大值為: 27-1.
· static byte MIN_VALUE -- 保持可以有一個位元組的最低值,這是一個恆定的,最大值為:-27.
· static int SIZE -- 這是用來表示一個位元組的值在2補碼二進位制形式的位元的數目。
· static Class<Byte> TYPE -- 這是類的例項,原始型別位元組。
此處列舉兩個類方法:
1 |
byte byteValue() |
2 |
int compareTo(Byte anotherByte) |
編寫程式碼如下圖所示:
執行結果如下圖所示
因為b為100,所以返回位元組值也是100,比較a和b,因為a小於b,所以返回負值。
(十) Character類
java.lang.Character類封裝在一個物件的基本型別char值。字元型別的物件只包含一個欄位,它的型別是char。列舉兩個方法:
1 |
static int charCount(int codePoint) |
2 |
char charValue() |
編寫程式碼如圖所示:
輸出結果如下圖所示,因為Java.lang.Character.charCount()方法用法例項教程-數量決定了需要的char值表示指定character (Unicode code point)。指定字元是否是等於或大於0x10000的,那麼該方法返回2。否則,該方法返回1。所以此結果輸出2.而輸出a 的原始字元值即a。
(十一)Double類
java.lang.Double類包裝的原始型別的值的Double物件。 Double型別的物件只包含一個欄位,它的型別是double。
編寫程式碼如下圖所示:
java.lang.Double.byteValue()方法返回此double值為一個位元組(轉換為一位元組)。Compare則是比較obj1和obj2,如果obj1大於obj2,就返回大於0的數,等於返回0,小於返回小於0的數。
得到結果如下:
(十二)Float類
java.lang.Float 類封裝了一個float基本型別的物件。Float型別的物件只包含一個欄位的型別是float. 此外,該類還提供多個方法,可以將float轉換為String,將String轉換為float,也提供了其他一些處理float時有用的常量和方法。
列舉兩個方法:
1. Java.lang.Float.compareTo()方法
2. Java.lang.Float.floatValue()方法
編寫程式碼如下圖所示:
因為方法一是比較兩個Float物件的數值,方法二是返回當前Float物件的float值.,所以輸出應該是以下輸出;
(十三). Math類
java.lang.Math 類包含的方法進行基本的數字操作,如基本的指數,對數,平方根和三角函式等. Math提供了一些常量,E,表示自然對數,PI表示圓周率,均為double型。下面列舉兩種方法:
1. staticint abs(int a) 此方法返回一個int值的絕對值.
2. static double acos(double a)此方法返回一個值的反餘弦值,返回的角度範圍從0.0到pi.
編寫程式碼如下圖所示:
Math.abs求絕對值,然後acos是返回一個值的餘弦值,執行結果如下圖所示:
(十四)Random類
Random類中實現的隨機演算法是偽隨機,也就是有規則的隨機。在進行隨機時,隨機演算法的起源數字稱為種子數(seed),在種子數的基礎上進行一定的變換,從而產生需要的隨機數字。相同種子數的Random物件,相同次數生成的隨機數字是完全相同的。也就是說,兩個種子數相同的Random物件,第一次生成的隨機數字完全相同,第二次生成的隨機數字也完全相同。這點在生成多個隨機數字時需要特別注意。
列舉兩種方法:
a、public boolean nextBoolean()該方法的作用是生成一個隨機的boolean值,生成true和false的值機率相等,也就是都是50%的機率。
b、public double nextDouble()該方法的作用是生成一個隨機的double值,數值介於[0,1.0)之間。
編寫程式碼如下圖所示:
執行結果如下:
(十五)BigInteger類
BigInteger類屬於java.math包,該型別的數字較Integer型別的數字範圍要大的多。BigInteger類支援任意精度的整數。BigInteger類中包含三個成員變數,分別為ONE,表示BigInteger 的常量 1。TEN,表示BigInteger 的常量10。ZERO,表示BigInteger 的常量 0。且它們都是static BigInteger型別。在BigInteger類中封裝了多種操作,除了基本的加,減,乘,除運算之外,還提供了絕對值,相反數,最大公約數以及判斷是否為質數的操作。
下面舉例兩種方法:
1. abs,取大數的絕對值
2. and,大數的加法
編寫程式碼如下圖所示:
執行結果:輸出-1000000+55的值和它自己本身的絕對值,如下圖所示
五,實驗小結:
這次實驗運算元量很多,做的很辛苦,但是做完之後收穫也很大,初步理解了十五種常用類的使用方法。對java的操作愈加嫻熟,對於常用類的瞭解也愈加深厚,發現了很多java具備的其他例如C語言沒有的好屬性,為以後的學習打下了深厚的基礎。希望在以後的學習中java能帶來更多的收穫。