Java多維數(shù)組和Arrays類方法總結(jié)詳解
一.數(shù)組的三種聲明方式總結(jié)
public class WhatEver { public static void main(String[] args) { //第一種 例: String[] test1 = new String[6]; test1[0] = "數(shù)組0"; test1[1] = "數(shù)組1"; //第二種 例: String[] test2 = {"數(shù)組0","數(shù)組1","數(shù)組2","...."}; //第三種 例: String[] test3 = new String[]{"數(shù)組0","數(shù)組1","數(shù)組2","...."}; } }<br><br>
二.多維數(shù)組的遍歷/二維數(shù)組
/二維數(shù)組 public class Test1 { public static void main(String[] args) { int[] score1=new int[10]; int[][] score2; String[][] names; //二維數(shù)組的初始化 score2=new int[][]{{1,2,3},{3,4,5,6},{16,7}};//靜態(tài)初始化 names=new String[6][5];//動(dòng)態(tài)初始化方式一 names=new String[6][];//動(dòng)態(tài)初始化方式二,一定要設(shè)置行數(shù) names[0]=new String[5];//第一行中有5個(gè)元素 names[1]=new String[4]; names[2]=new String[7]; names[3]=new String[5]; names[4]=new String[8]; names[5]=new String[5]; System.out.println("第一行中的元素:"+names[1].length); System.out.println(names.length);//打印的是二維數(shù)組有幾行 //如何遍歷二維數(shù)組 for(int m=0;m<score2.length;m++){//控制行數(shù) for(int n=0;n<score2[m].length;n++){//一行中有多少個(gè)元素(即多少列) System.out.print(score2[m][n]+" "); } System.out.println(); } } }
三. Arrays類的常用方法總結(jié)
java.util.Arrays類能方便地操作數(shù)組,它提供的所有方法都是靜態(tài)的。
3.1 asList()方法
返回一個(gè)受指定數(shù)組支持的固定大小的列表。
此方法還提供了一個(gè)創(chuàng)建固定長(zhǎng)度(不可修改的數(shù)組 同singletonList)的列表的便捷方法,該列表被初始化為包含多個(gè)元素:
List stooges = Arrays.asList("Larry", "Moe", "Curly");
@SafeVarargs public static <T> List<T> asList(T... a) { return new ArrayList<>(a); }
使用該方法可以返回一個(gè)固定大小的List,如
List<String> stringList = Arrays.asList("Welcome", "To", "Java", "World!"); List<Integer> intList = Arrays.asList(1, 2, 3, 4);
3.2 copyOf()及copyOfRange方法
copyOf(int[] original, int newLength)
復(fù)制指定的數(shù)組,截取或用 0 填充(如有必要),以使副本具有指定的長(zhǎng)度。
copyOfRange(int[] original, int from, int to)
將指定數(shù)組的指定范圍復(fù)制到一個(gè)新數(shù)組。
String[] names2 = { "Eric", "John", "Alan", "Liz" }; //[Eric, John, Alan] String[] copy = Arrays.copyOf(names2, 3); //[Alan, Liz] String[] rangeCopy = Arrays.copyOfRange(names2, 2, names2.length);
3.3 sort()方法:對(duì)數(shù)組排序
String[] names = { "Liz", "John", "Eric", "Alan" }; //只排序前兩個(gè) //[John, Liz, Eric, Alan] Arrays.sort(names, 0, 2); //全部排序 //[Alan, Eric, John, Liz] Arrays.sort(names);
另外,Arrays的sort方法也可以結(jié)合比較器,完成更加復(fù)雜的排序。
public static <T> void sort(T[] a, Comparator<? super T> c) { if (LegacyMergeSort.userRequested) legacyMergeSort(a, c); else TimSort.sort(a, c); }
返回指定數(shù)組內(nèi)容的字符串表示形式。
String[] arg = {"a", "b", "c", "d"}; // 結(jié)果 [a, b, c, d] System.out.print(Arrays.toString(arg));
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
StringUtils中的isEmpty、isNotEmpty、isBlank和isNotBlank的區(qū)別詳解
這篇文章主要介紹了StringUtils中的isEmpty、isNotEmpty、isBlank和isNotBlank的區(qū)別詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06netty服務(wù)端輔助類ServerBootstrap創(chuàng)建邏輯分析
這篇文章主要介紹了netty服務(wù)端輔助類ServerBootstrap創(chuàng)建邏輯分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-03-03SpringBoot-application.yml多環(huán)境配置詳解
本文主要介紹了SpringBoot-application.yml多環(huán)境配置詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07java 判斷一個(gè)數(shù)是否為2的整數(shù)次冪方法
今天小編就為大家分享一篇java 判斷一個(gè)數(shù)是否為2的整數(shù)次冪方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-07-07SpringBoot2.x過(guò)后static下的靜態(tài)資源無(wú)法訪問(wèn)的問(wèn)題
這篇文章主要介紹了SpringBoot2.x過(guò)后static下的靜態(tài)資源無(wú)法訪問(wèn)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-01-01