Java多維數(shù)組和Arrays類方法總結詳解
一.數(shù)組的三種聲明方式總結
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];//動態(tài)初始化方式一
names=new String[6][];//動態(tài)初始化方式二,一定要設置行數(shù)
names[0]=new String[5];//第一行中有5個元素
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++){//一行中有多少個元素(即多少列)
System.out.print(score2[m][n]+" ");
}
System.out.println();
}
}
}
三. Arrays類的常用方法總結
java.util.Arrays類能方便地操作數(shù)組,它提供的所有方法都是靜態(tài)的。
3.1 asList()方法
返回一個受指定數(shù)組支持的固定大小的列表。
此方法還提供了一個創(chuàng)建固定長度(不可修改的數(shù)組 同singletonList)的列表的便捷方法,該列表被初始化為包含多個元素:
List stooges = Arrays.asList("Larry", "Moe", "Curly");
@SafeVarargs
public static <T> List<T> asList(T... a) {
return new ArrayList<>(a);
}
使用該方法可以返回一個固定大小的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)
復制指定的數(shù)組,截取或用 0 填充(如有必要),以使副本具有指定的長度。
copyOfRange(int[] original, int from, int to)
將指定數(shù)組的指定范圍復制到一個新數(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()方法:對數(shù)組排序
String[] names = { "Liz", "John", "Eric", "Alan" };
//只排序前兩個
//[John, Liz, Eric, Alan]
Arrays.sort(names, 0, 2);
//全部排序
//[Alan, Eric, John, Liz]
Arrays.sort(names);
另外,Arrays的sort方法也可以結合比較器,完成更加復雜的排序。
public static <T> void sort(T[] a, Comparator<? super T> c) {
if (LegacyMergeSort.userRequested)
legacyMergeSort(a, c);
else
TimSort.sort(a, c);
}
返回指定數(shù)組內容的字符串表示形式。
String[] arg = {"a", "b", "c", "d"};
// 結果 [a, b, c, d]
System.out.print(Arrays.toString(arg));
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Intellij IDEA 旗艦版創(chuàng)建 Spring MVC 項目踩過的坑
IDEA旗艦版可以直接創(chuàng)建Spring MVC項目,但創(chuàng)建后的項目并不是直接就可以運行,還需要進行一些配置。這篇文章主要介紹了Intellij IDEA 旗艦版創(chuàng)建 Spring MVC 項目踩坑記 ,需要的朋友可以參考下2020-03-03
使用Java實現(xiàn)查看線程的運行狀態(tài)(附源碼)
在現(xiàn)代 Java 應用中,線程的運行狀態(tài)對于排查問題和優(yōu)化性能具有至關重要的作用,本文將使用Java編寫一個查看線程運行狀態(tài)的工具,有需要的可以了解下2025-03-03
SpringBoot中實現(xiàn)異步調用@Async詳解
這篇文章主要介紹了SpringBoot中實現(xiàn)異步調用@Async詳解,在SpringBoot的日常開發(fā)中,一般都是同步調用的,但實際中有很多場景非常適合使用異步來處理,需要的朋友可以參考下2024-01-01
SpringBoot前后端交互、全局異常處理之后端異常信息拋到前端顯示彈窗
Spring Boot是一個用于構建獨立的、基于生產級別的Spring應用程序的框架,下面這篇文章主要給大家介紹了關于SpringBoot前后端交互、全局異常處理之后端異常信息拋到前端顯示彈窗的相關資料,需要的朋友可以參考下2024-08-08

