法方重载要注意的是:
- public class ccc {
- /**
- * 方法重载:方法名必须相同,参数列表必须不同,放回的参数类型可以不同
- */
- public static void aa() { }//可以没有参数
- public static int aa(int a){ return a;}//和下面的一个不同就是产生列表
- public static int aa(int a,int b){ return a;}
-
- public static double aa(double a,int b){ return a;}//参数列表类型不同也可以
- public static double aa(double a,double b){ return a;}
-
- }
数组下标重0开始,内存连续
(1)数组的创建方式:
- public static void main(String[] args) {
-
- int arr[];
- int[] arr1;//首先这个
-
- //静态初始化
- int[] array = new int[]{1,2,3,4};
- int[] array1 = {1,2,3,4};
- //动态初始化:注意先定义好长度再添加元素
-
- //多维数组,new int[行][列]
- int[] mArray2[];
- int[][] mArray = new int[3][2];
- int[][] mArray1 = new int[2][];//行数必须有值
-
- //数组长度是array.length,没有减一
- int len = array.length;
-
-
-
- }
二维数组访问注意:
(2)数组注意问题
数组下标是0开始,定义长度是索引减一
int[] arr = new int[3];//没有下标是arr[3]的元素
数组的默认值:
- public class ccc {
- static int[] array = new int[3];
- public static void main(String[] args) {
- int[] arr = new int[3];
- System.out.println(arr[0]);//0
- System.out.println(array[0]);//0
- }
- }
public static void fill(int[] a, int val)
将指定的 int 值分配给指定 int 型数组指定范围中的每个元素。同样的方法适用于所有的其他基本数据类型(Byte,short,Int等)
- import java.util.Arrays;
- public class Test1 {
- public static void main(String[] args) {
- //Arrays.toString()方法,数组输出
- int[] arr = {3,2,9,5};
- System.out.println(Arrays.toString(arr));// [3, 2, 9, 5]
-
- //Arrays.sort()方法
- /**
- * 对字符串进行排序时,是对每一个字符比较,而不是简单的比较长度
- * str1 = abd
- * str2 = abcdef
- * 因为d > c,所以 str1 > str2
- */
-
- Arrays.sort(arr);//数组排序,默然是【升序】
- System.out.println(Arrays.toString(arr));//[2, 3, 5, 9]
-
- Arrays.sort(arr,0,1);//Arrays.sort(数组名,起始下标,排序个数)
-
- //Arrays.equals()方法
- /**
- * 注意:Arrays.equals()是比较【数组内容】
- * 而a.equals(b) 这样的方法是比较【地址值】
- */
- int[] ar = {1,3,4};
- int[] ar1 = {1,3,4};
- System.out.println(Arrays.equals(ar,ar1));//true
-
- //Arrays.binarySearch(),二分查法(查找元素)
- int[] Arr = {1,3,5,7};
- Arrays.binarySearch(Arr,5);//返回值大于0就是找到了
-
- }
- }