前言
類屬於引用類型的一種,所以使用類的使用符合引用類型的使用步驟。我們可以查詢API去找到官方幫我們定義好的類API(Application Programming Interface),應用程序編程接口。Java API是一本程序員的 字典 ,是JDK中提供給 我們使用的類的說明文檔。這些類將底層的代碼實現封裝了起來,我們不需要關心這些類是如何實現的,只需要學習這些類如何使用即可。所以我們可以通過查詢API的方式,來學習Java提供的類,並得知如何使用它們。
引用類型的使用步驟
1:導包
使用import關鍵字導包,在類的所有代碼之前導包,引入要使用的類型,java.lang包下的所有類無需導入。
格式:
- import 包名.類名;
- 使用該類的構造方法,創建一個該類的對象。
格式:
- 數據類型 變量名 = new 數據類型(參數列表);
- 調用該類的成員方法,完成指定功能。格式: 變量名.方法名();
- 調用該類的成員變量,獲取指定的值。格式:變量名.變量名稱;
Scanner類
一個可以解析基本類型和字符串的簡單文本掃描器。 例如,以下代碼使用戶能夠從 System.in 中讀取一個數:
查看類
- java.util.Scanner :該類需要import導入後使用。
查看構造方法
- public Scanner(InputStream source) : 構造一個新的 Scanner ,它生成的值是從指定的輸入流掃描的。
查看成員方法
- nextInt(); 用來接收控制檯錄入的數字
- sc.next(); 用來接收控制檯錄入的字符串
代碼示例
import java.util.Scanner;
public class DemoScanner {
public static void main(String[] args) {
// 創建對象
Scanner sc = new Scanner(System.in);
// 接收數據
System.out.println("請輸入第一個數據:");
int a = sc.nextInt();
System.out.println("請輸入第二個數據:");
int b = sc.nextInt();
System.out.println("請輸入第三個數據:");
int c = sc.nextInt();
// 如何獲取三個數據的最大值
int temp = (a > b ? a : b);
int max = (temp > c ? temp : c);
System.out.println("max:" + max);
}
}
Random類
這個Random類,它可以產生多種數據類型的隨機數,在這裏我們主要介紹生成整數與小數的方式。
查看類
- java.util.Random :該類需要 import導入使後使用。
查看構造方法
- public Random() :創建一個新的隨機數生成器。
查看成員方法
- public int nextInt(int maxValue) 產生[0,maxValue)範圍的隨機整數,包含0,不包含maxValue;
- public double nextDouble() 產生[0,1)範圍的隨機小數,包含0.0,不包含1.0。
猜數字小遊戲
- 遊戲開始時,會隨機生成一個1-100之間的整數 number 。玩家猜測一個數字 guessNumber ,會與 number 作比較,系統提示大了或者小了,直到玩家猜中,遊戲結束。
import java.util.Random; // 導包
import java.util.Scanner;
public class DemoRandom {
public static void main(String[] args) {
// 系統產生一個隨機數1‐100之間的。
Random r = new Random();
int number = r.nextInt(100) + 1;
Scanner sc = new Scanner(System.in);
while (true) {
// 鍵盤錄入我們要猜的數據
System.out.println("請輸入你要猜的數字(1‐100):");
int guessNumber = sc.nextInt();
// 比較這兩個數據(用if語句)
if (guessNumber > number) {
System.out.println("你猜的數據" + guessNumber + "大了");
} else if (guessNumber < number) {
System.out.println("你猜的數據" + guessNumber + "小了");
} else {
System.out.println("恭喜你,猜中了");
break;
}
}
}
}
ArrayList類
- ArrayList集合是程序中最常見的一種集合(容器),它屬於引用數據類型(類)。在ArrayList內部封裝了一個長度可變的數組,當存入的元素超過數組長度時,ArrayList會在內存中分配一個更大的數組來存儲這些元素,因此可以將ArrayList集合看作一個長度可變的數組。
- java.util.ArrayList <E> :該類需要 import導入使後使用。 <E> ,表示一種指定的數據類型,叫做泛型。 E ,取自英語單詞Element(元素)的首字母。在出現 E 的地方,我們使 用一種引用數據類型將其替換即可,表示我們將存儲哪種引用類型的元素。
查看常用的構造方法
- public ArrayList() :構造一個內容爲空的集合。在JDK 7後,右側泛型的尖括號之內可以留空,但是<>仍然要寫。
查看常用的成員方法
- public boolean add(E e) : 將指定的元素添加到此集合的尾部。 參數 E e ,在構造ArrayList對象時, <E> 指定了什麼數據類型,那麼 add(E e) 方法中,只能添加什麼數據類型的對象。
- public E remove(int index) :移除此集合中指定位置上的元素。返回被刪除的元素。
- public E get(int index) :返回此集合中指定位置上的元素。返回獲取的元素。
- public int size() :返回此集合中的元素數。遍歷集合時,可以控制索引範圍,防止越界。
- public void clear():清空集合中所有元素。
方法演示
import java.util.ArrayList;
public class DemoArrayList {
public static void main(String[] args) {
// 創建ArrayList集合
ArrayList<String> list = new ArrayList<String>();
// 向集合中添加元素
list.add("stu1");
list.add("stu2");
list.add("stu3");
list.add("stu4");
// 獲取集合中元素的個數
System.out.println("集合的長度:" + list.size());
// 取出並打印指定位置的元素
System.out.println("第1個元素是:" + list.get(0));
System.out.println("第2個元素是:" + list.get(1));
System.out.println("第3個元素是:" + list.get(2));
System.out.println("第4個元素是:" + list.get(3));
//public E remove(int index) :移除此集合中指定位置上的元素。返回被刪除的元素。
//刪除index爲的1位置的元素,並且打印輸出
System.out.println(list.remove(1));//stu2
//集合遍歷
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
// public void clear():清空集合中所有元素。
list.clear();
}
}
如何存儲基本數據類型
集合不能存儲基本類型,只能存儲引用類型的數據。類似 <int> 不能寫,但是存儲基本數據類型對應的 包裝類型是可以的。所以,想要存儲基本類型數據, <> 中的數據類型,必須轉換後才能編寫,轉換寫法如下:
我們發現,只有 Integer 和 Character 需要特殊記憶,其他基本類型只是首字母大寫即可。那麼存儲基本類型數據,代碼如下:
ArrayList<Integer> list = new ArrayList<Integer>();
ArrayList練習
定義獲取所有偶數元素集合的方法(ArrayList類型作爲返回值)
import java.util.ArrayList;
import java.util.Random;
public class DemoArrayList {
public static void main(String[] args) {
// 創建Random 對象
Random random = new Random();
// 創建ArrayList 對象
ArrayList<Integer> list = new ArrayList<>();
// 添加隨機數到集合
for (int i = 0; i < 20; i++) {
int r = random.nextInt(1000) + 1;
list.add(r);
}
// 調用偶數集合的方法
ArrayList<Integer> arrayList = getArrayList(list);
System.out.println(arrayList);
}
public static ArrayList<Integer> getArrayList(ArrayList<Integer> list) {
// 創建小集合,來保存偶數
ArrayList<Integer> smallList = new ArrayList<>();
// 遍歷list
for (int i = 0; i < list.size(); i++) {
// 獲取元素
Integer num = list.get(i);
// 判斷爲偶數,添加到小集合中
if (num % 2 == 0) {
smallList.add(num);
}
}
// 返回小集合
return smallList;
}
}