java 方法重載,引用數據類型整理 ArrayList集合整理
方法的重載 Java允許在一個類中定義多個名稱相同的方法,但是參數的類型或個數必須不同,這就是方法的重載。
public classDemo03 { public static void main(String[] args) { int sum1 = add(1, 2); int sum2 = add(1, 2, 3); double sum3 = add(1.2, 2.3); System.out.println("sum1=" + sum1);//3 System.out.println("sum2=" + sum2);//6 System.out.println("sum3=" + sum3);//3.5 } public static int add(int x, int y) { return x + y; } public static int add(int x, int y, int z) { return x + y + z; } public static double add(double x, double y) { return x + y; } }
重載註意事項
1.重載方法參數必須不同:
參數個數不同,如method(int x)與
參數類型不同,如method(int x)與method(double x)不同g
參數順序不同,如method(int x,double y)與method(double x,int y)不同
重載只與方法名與參數類型相關與返回值無關
如void method(int x)與int method(int y)不是方法重載,不能同時存在
重載與具體的變量標識符無關
如method(int x)與method(int y)不是方法重載,不能同時存在
參數傳遞
參數傳遞:當我們要調用一個方法時,我們會把指定的數值,傳遞給方法中的參數,這樣方法中的參數就擁有了這個指定的值,可以使用該值,在方法中運算了。
這種傳遞方式,我們稱為參數傳遞。
1.在這裏,定義方法時,參數列表中的變量,我們稱為形式參數
2.調用方法時,傳入給方法的數值,我們稱為實際參數
public class Demo01 { public static void main(String[] args) { int a=5; int b=10; change(a, b); System.out.println("a=" + a);//5 System.out.println("b=" + b);//10 } public static void change(int a, int b){ a=200; b=500; } }
public class Demo02 { public static void main(String[] args) { int[] arr = { 1, 2, 3 }; change(arr); for (int i = 0; i < arr.length; i++) { System.out.println(arr[i]); } } public static void change(int[] arr) { for (int i = 0; i < arr.length; i++) { arr[i] *= 2; } } } //2.4.6
結論:
當調用方法時,如果傳入的數值為基本數據類型(包含String類型),形式參數的改變對實際參數不影響
當調用方法時,如果傳入的數值為引用數據類型(String類型除外),形式參數的改變對實際參數有影響
引用數據類型
分類
第一種,Java為我們提供好的類,如Scanner類,Random類等,這些已存在的類中包含了很多的方法與屬性,可供我們使用。
第二種,我們自己創建的類,按照類的定義標準,可以在類中包含多個方法與屬性,來供我們使用。
自定義數據類型概述
類,它是引用數據類型,自定義類也是一種數據類型。只是自定義類型並非Java為我們預先提供好的類型,而是我們自己定義的一種引用數據類型用來描述一個事物。
類的定義與使用
public class Phone { String brand; String color; double size; }自定義類
類的使用格式 使用方式和使用引用數據類型Scanner類相似
導包,創建對象:數據類型 變量名=new 數據類型();調用方法,訪問屬性:變量名.屬性
public class Test { public static void main(String[] args) { Phone p = new Phone(); p.brand = "蘋果6s"; p.color = "白色";[為p中color屬性賦值為”白色”] p.size = 5.5;[為p中size屬性賦值為5.5] System.out.println("手機品牌為" + p.brand);//手機品牌為蘋果6s System.out.println("手機顏色為" + p.color);//手機顏色為白色 System.out.println("手機尺寸大小為" + p.size);//手機尺寸大小為5.5 } }
ArrayList集合
集合的創建
導包:import java.util.ArrayList;
創建對象:與其他普通的引用數據類型創建方式完全相同,但是要指定容器中存儲的數據類型:
ArrayList<要存儲元素的數據類型> 變量名 = new ArrayList<要存儲元素的數據類型>();
註意:
集合中存儲的元素,只能為<>括號中指定的數據類型元素;
“<要存儲元素的數據類型>”中的數據類型必須是引用數據類型,不能是基本數據類型;
下面給出8種基本數據類型所對應的引用數據類型表示形式:
集合中常用的方法:
import java.util.ArrayList; public class ArrayListDemo01 { public static void main(String[] args) { 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)); } }
長度可變,通過索引訪問
集合的遍歷
import java.util.ArrayList; public class ArrayListDemo02 { public static void main(String[] args) { ArrayList<Integer> list = new ArrayList<Integer>(); //添加元素到集合 list.add(13); list.add(15); list.add(22); list.add(29); //遍歷集合 for (int i = 0; i < list.size(); i++) { //通過索引,獲取到集合中每個元素 int n = list.get(i); System.out.println(n); } } }
集合中其他常用方法:
|------boolean add(int index, Object obj)
功能:在集合中指定index位置,添加新元素obj
功能說明:假設集合list中有元素[“java”,“javaEE”],當使用add(1,“javaWeb”)後,集合list中的元素為[“java”,“javaWeb”,“JavaEE”]。
|------Object set(int index, Object obj)
功能:用指定元素obj替代集合中指定index位置的元素
功能說明:假設集合list中有元素[“java”,“javaEE”],當使用set(0,“javaWeb”)後,集合list中的元素為[“javaWeb”,“JavaEE”]。
|------Object remve(int index)
功能:從集合中刪除指定index處的元素,返回該元素
功能說明:假設集合list中有元素[“java”,“javaEE”],當使用remove(0)後,集合list中的元素為[“JavaEE”],返回值為“java”。
|------void clear()
功能:清空集合中所有元素
功能說明:假設集合list中有元素[“java”,“javaEE”],當使用clear()後,集合list中的元素為空[]。
java 方法重載,引用數據類型整理 ArrayList集合整理