Java基础知识学习04-自定义类、ArrayList集合
類與對象
類是一個模子,確定對象將會擁有的特征(屬性)和行為(方法)。
類的特征:類是對象的類型
? ? ? ? ? ? ? ? ?具有相同屬性和方法的一組對象的集合
類的組成:屬性和方法
定義一個類:public class ?類名{
? ? ? ? ? ? ? ? ? ? ? ? ?//定義屬性部分
? ? ? ? ? ? ? ? ? ? ? ? ? 屬性1的類型 ?屬性1;
? ? ? ? ? ? ? ? ? ? ? ? ? 屬性2的類型 ?屬性2; ? ? ?// 屬性 ? 即表示對象有什么
? ? ? ? ? ? ? ? ? ? ? ? ?屬性n的類型 ? 屬性n;
? ? ? ? ? ? ? ? ? ? ? ? ?//定義方法部分
? ? ? ? ? ? ? ? ? ? ? ? ?方法1;
? ? ? ? ? ? ? ? ? ? ? ? ?方法2; ? ? ? ? ? ? ? ? ? ? ? ? ? ? //方法:即表示對象干什么
? ? ? ? ? ? ? ? ? ? ? ? ?方法n;
? ? ? ? ? ? ? ? ? ?}
?
自定義類
? ?創建java文件,與類名相同
? ? ?public class 類名{
? ? ? 數據類型 ?屬性名稱1;
? ? ? 數據類型 ?屬性名稱2;
? ? ? ? ? …
? ? ? }
? ? ?例如:創建一個Phone類? ?
? ? ? public?class?Phone {
? ? ? ? ? ? ? ?String brand;// 品牌型號
? ? ? ? ? ? ? String color;// 顏色
? ? ? ? ? ? ? double?size; // 尺寸大小
? ? ? ? ? }
類的使用格式
? 1、導包:我們將所有的類放到同一個文件夾下,可以避免導包。
? 2、創建對象:數據類型 ?變量名 = new 數據類型();
? 3、訪問屬性:變量名.屬性
? ? ? public?class?Test {
? ? ? ? ? public?static?void?main(String[] args) {
? ? ? ? ? ? ? ? Phone p = new?Phone(); //創建對象
? ? ? ? ? ? ? ? p.brand?= "蘋果6s"; ? ?//通過對象.屬性 ?來訪問屬性,并賦值
? ? ? ? ? ? ? ? p.color?= "白色";
? ? ? ? ? ? ? ? p.size?= 5.5;
? ? ? ? ? ? ? ?System.out.println("手機品牌為"?+ p.brand);
? ? ? ? ? ? ? ?System.out.println("手機顏色為"?+ p.color);
? ? ? ? ? ? ? ?System.out.println("手機尺寸大小為"?+ p.size);
? ? ? ? ? ? ?}
? ? ? ?}
內存圖解(由此可得 ?類是引用數據類型)
ArrayList集合?
數組可以保存多個元素,但在某些情況下無法確定到底要保存多少個元素,此時數組將不再適用,因為數組的長度不可變。
JDK中提供了一系列特殊的類,這些類可以存儲任意類型的元素,并且長度可變,統稱為集合。
? ?集合的創建
? ?1、導包:import java.util.ArrayList;
? ? ?2、創建對象:與其他普通的引用數據類型創建方式完全相同,但是要指定容器中存儲的數據類型:
? ? ? ? ? ArrayList<要存儲元素的數據類型> 變量名 = new ArrayList<要存儲元素的數據類型>();
? ? ? ? ??集合中存儲的元素,只能為<>括號中指定的數據類型元素;
? ? ? ? ? “<要存儲元素的數據類型>”中的數據類型必須是引用數據類型,不能是基本數據類型;
? ?8種基本數據類型對應的引用數據類型
| 基本數據類型 | 對應的引用數據類型表示形式 |
| byte | Byte |
| short | Short |
| Int | Integer |
| long | Long |
| float | Float |
| double | Double |
| char | Character |
| boolean | Boolean |
集合中常用的方法
? ? add(); ? 添加數據
? ? get(); ? ?獲取數據
? ? size(); ? 返回集合的長度
? ?remove(int index); 刪除指定位置的數據
? ?add(int index,要添加的數據); 在指定位置添加數據
? ?clear(); ?清空集合中的數據
? ?set(int index,要修改的數據); ?修改指定位置的數據
? ? 例如:
? ? ? ? ? ? ?import java.util.ArrayList;
? ? ? ? ? ? ?public class JiHe
? ? ? ? ? ? {
? ? ? ? ? ? ? ? ?public static void main(String[] args)
? ? ? ? ? ? ? ? ?{
? ? ? ? ? ? ? ? ? ? ? ? ArrayList<String> list=new ArrayList<String>();
? ? ? ? ? ? ? ? ? ? ? ? //對象.方法() 對象.add(); 添加數據 集合新增
? ? ? ? ? ? ? ? ? ? ? ? list.add("張三");
? ? ? ? ? ? ? ? ? ? ? ? list.add("李四");
? ? ? ? ? ? ? ? ? ? ? ? list.add("王五");
? ? ? ? ? ? ? ? ? ? ? ? //往集合中指定位置添加數據 對象.add(int index,新增數據);
? ? ? ? ? ? ? ? ? ? ? ? list.add(1,"小紅");
? ? ? ? ? ? ? ? ? ? ? ?//刪除集合中指定位置的元素 對象.remove(int index);
? ? ? ? ? ? ? ? ? ? ? ?//list.remove(2);
? ? ? ? ? ? ? ? ? ? ? ?//清空集合中的數據 對象.clear();
? ? ? ? ? ? ? ? ? ? ? ?//list.clear();
? ? ? ? ? ? ? ? ? ? ? ?//修改集合中指定位置的數據 對象.set(int index,修改后的值);
? ? ? ? ? ? ? ? ? ? ? ?list.set(2,"小明");
? ? ? ? ? ? ? ? ? ? ? String a=list.get(0); //對象.get(); 取出數據
? ? ? ? ? ? ? ? ? ? ? String b=list.get(1);
? ? ? ? ? ? ? ? ? ? ? String c=list.get(2);
? ? ? ? ? ? ? ? ? ? ? //獲取集合中的數據,通過對象.get(int index)
? ? ? ? ? ? ? ? ? ? ? for(int i=0;i<list.size();i++){ //對象.size() 數組的長度
? ? ? ? ? ? ? ? ? ? ? System.out.println(list.get(i));
? ? ? ? ? ? ? ? ? ? ? ? ? ?}
? ? ? ? ? ? ? ? ? ?}
? ? ? ? }
舉例:定義一個員工類Employee,包含三個屬性姓名、工號、工資,創建三個員工對象存入ArrayList集合中,并遍歷輸出。
代碼如下:
class Employee
{
String name;
int eno;
double salary;
}
?
import java.util.ArrayList;
public class EmployeeTest
{
public static void main(String[] args)
{
/*1、創建對象
2、通過 對象.屬性 添加數據
3、創建集合對象
ArrayList<要存儲元素的數據類型> 變量名 = new ArrayList<要存儲元素的數據類型>();
4、通過 對象.方法() 操作數據
5、對象.add(); 添加數據
對象.get(); 獲取數據
*/
Employee em1 = new Employee();
Employee em2 = new Employee();
Employee em3 = new Employee();
em1.name="張三";
em1.eno=100;
em1.salary=2340;
em2.name="李四";
em2.eno=101;
em2.salary=2640;
em3.name="王五";
em3.eno=102;
em3.salary=3340;
ArrayList<Employee> emp = new ArrayList<Employee>();
emp.add(em1);
emp.add(em2);
emp.add(em3);
for(int i=0;i<emp.size();i++){
System.out.println(emp.get(i).name+'\t'+emp.get(i).eno+'\t'+emp.get(i).salary);
}
}
}
?
轉載于:https://www.cnblogs.com/Java-125/p/8629176.html
總結
以上是生活随笔為你收集整理的Java基础知识学习04-自定义类、ArrayList集合的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ubuntu 使用apt-get ins
- 下一篇: input输入框的input事件和cha