這期內(nèi)容當中小編將會給大家?guī)碛嘘P(guān)怎么在Java中定義與使用數(shù)組,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務領(lǐng)域包括:成都做網(wǎng)站、成都網(wǎng)站建設、成都外貿(mào)網(wǎng)站建設、企業(yè)官網(wǎng)、英文網(wǎng)站、手機端網(wǎng)站、網(wǎng)站推廣等服務,滿足客戶于互聯(lián)網(wǎng)時代的襄陽網(wǎng)站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡建設合作伙伴!數(shù)組是一個引用數(shù)據(jù)類型,那么所有的引用數(shù)據(jù)類型都可以為其設置多個棧內(nèi)存指向。所以在進行數(shù)組操作的時候,也可以將其通過方法進行處理。
范例: 方法接受數(shù)組
public class ArrayDemo { public static void main(String args[]) { int data[] = new int[] {1, 2, 3}; printArray(data); } //定義一個專門進行數(shù)組輸出的方法 public static void printArray(int temp[]) { for (int i = 0; i < temp.length; i++) { System.out.print(temp[i] + "、"); } } }
在方法的參數(shù)上由于需要接受一個整型數(shù)組,所以就實現(xiàn)了一個最為基礎(chǔ)的引用傳遞操作。
范例: 方法返回數(shù)組
public class ArrayDemo { public static void main(String args[]) { int data[] = init(); //接受數(shù)組 printArray(data); } //此時的方法希望可以返回一個數(shù)組類型,所以返回值類型定義為整形數(shù)組 public static int[] init() { return new int[] {1, 2, 3, 4, 6}; } //定義一個專門進行數(shù)組輸出的方法 public static void printArray(int temp[]) { for (int i = 0; i < temp.length; i++) { System.out.print(temp[i] + "、"); } } }
那么現(xiàn)在的數(shù)組上發(fā)生了引用傳遞,那么也就意味著方法接受數(shù)組之后也可以對數(shù)組進行內(nèi)容修改。
范例: 定義一個方法,該方法可以實現(xiàn)數(shù)組的內(nèi)容的乘2
public class ArrayDemo { public static void main(String args[]) { int data[] = init(); inc(data); printArray(data); } public static void inc(int arr[]) { for(int x = 0; x < arr.length; x++) arr[x] *= 2; } //此時的方法希望可以返回一個數(shù)組類型,所以返回值類型定義為整形數(shù)組 public static int[] init() { return new int[] {1, 2, 3, 4, 6}; } //定義一個專門進行數(shù)組輸出的方法 public static void printArray(int temp[]) { for (int i = 0; i < temp.length; i++) { System.out.print(temp[i] + "、"); } } }
在Java本身給出的類庫之中也提供有對于數(shù)組的操作的相關(guān)支持方法。
1、數(shù)組排序:java.util.Arrays.sort(數(shù)組名稱);
范例: 實現(xiàn)數(shù)組排序操作
public class ArrayDemo { public static void main(String args[]) { int data[] = new int[] {5, 13, 1, 55, 77}; char arr[] = new char[] {'D', 'C', 'F'}; java.util.Arrays.sort(data); java.util.Arrays.sort(arr); printArray(data); printArray(arr); } //定義一個專門進行數(shù)組輸出的方法 public static void printArray(int temp[]) { for (int i = 0; i < temp.length; i++) { System.out.print(temp[i] + "、"); } System.out.println(); } public static void printArray(char temp[]) { for (int i = 0; i < temp.length; i++) { System.out.print(temp[i] + "、"); } System.out.println(); } }
只要是基本數(shù)據(jù)類型的數(shù)組,Arrays.sort()都可以輕松地實現(xiàn)排序處理。
2、數(shù)組拷貝:指的是將一個數(shù)組的部分內(nèi)容替換掉另外一個數(shù)組的內(nèi)容
方法(加工):System.arraycopy(原數(shù)組名稱, 原數(shù)組開始點, 目標數(shù)組名稱, 目標數(shù)組開始點, 拷貝長度)
范例: 實現(xiàn)數(shù)組拷貝
原數(shù)組A:1、2、3、4、5、6、7、8、9;
原數(shù)組B:11、22、33、44、55、66、77、88、99;
替換后的數(shù)組A:1、55、66、77、5、6、7、8、9;
public class ArrayDemo { public static void main(String args[]) { int dataA[] = new int[] {1, 2, 3, 4, 5, 6, 7, 8, 9}; int dataB[] = new int[] {11, 22, 33, 44, 55, 66, 77, 88, 99}; System.arraycopy(dataB, 4, dataA, 1, 3); printArray(dataA); } //定義一個專門進行數(shù)組輸出的方法 public static void printArray(int temp[]) { for (int i = 0; i < temp.length; i++) { System.out.print(temp[i] + "、"); } System.out.println(); } }
這些基本的數(shù)組操作只能夠作為邏輯玩玩,開發(fā)用不上。
現(xiàn)在假設給你一個數(shù)組,要求可以統(tǒng)計該數(shù)組的較大值、最小值、平均值、總和。這種操作肯定是要通過循環(huán)的操作形式完成。
范例: 基本實現(xiàn)
public class ArrayDemo { public static void main(String args[]) { int data[] = new int[] {1, 2, 3, 4, 66, 5, 6, 7, 8, 9}; int max = data[0]; int min = data[0]; int sum = 0; for(int x = 0; x < data.length; x++) { sum += data[x]; if(data[x] > max) max = data[x]; if(data[x] < min) min = data[x]; } System.out.println("較大值:" + max); System.out.println("最小值:" + min); System.out.println("數(shù)據(jù)總和:" + sum); System.out.println("平均值:" + (double)sum/data.length); } }
此時確實實現(xiàn)了所需要的功能,但是隨之會發(fā)現(xiàn)主方法中的代碼有些多。主方法實際上就相當于一個客戶端調(diào)用,那么既然是客戶端調(diào)用,里面的代碼應該也越簡單越好。
范例: 改進代碼
public class ArrayDemo { public static void main(String args[]) { int data[] = new int[] {1, 2, 3, 4, 66, 5, 6, 7, 8, 9}; double result[] = stat(data); System.out.println("較大值:" + result[0]); System.out.println("最小值:" + result[1]); System.out.println("數(shù)據(jù)總和:" + result[2]); System.out.println("平均值:" + result[3]); } //此時需要返回的數(shù)據(jù)一共有四個,那么一個方法只能夠返回一種數(shù)據(jù)類型,所以應該使用數(shù)組返回 //數(shù)組[0]為較大值、數(shù)組[1]為最小值、數(shù)組[2]為數(shù)據(jù)總和、數(shù)組[3]為平均值 public static double[] stat(int data[]) { double reData[] = new double[4]; reData[0] = data[0]; reData[1] = data[0]; reData[2] = data[0]; for(int x = 1; x < data.length; x++) { reData[2] += data[x]; if(data[x] > reData[0]) reData[0] = data[x]; if(data[x] < reData[1]) reData[1] = data[x]; } reData[3] = reData[2] / data.length; return reData; } }
在整個進行程序開發(fā)的時候,主方法不要涉及到過于復雜的邏輯程序,只需要關(guān)注結(jié)果。
上述就是小編為大家分享的怎么在Java中定義與使用數(shù)組了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
名稱欄目:怎么在Java中定義與使用數(shù)組-創(chuàng)新互聯(lián)
網(wǎng)站鏈接:http://vcdvsql.cn/article24/ddhgje.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、搜索引擎優(yōu)化、網(wǎng)站收錄、營銷型網(wǎng)站建設、自適應網(wǎng)站、網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)