亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

帶你入門Java的數(shù)組

 更新時(shí)間:2021年07月06日 17:24:03   作者:貪玩的阿柒  
這篇文章主要給大家介紹了關(guān)于Java中數(shù)組的定義和使用的相關(guān)資料,,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

數(shù)組的定義

  • 數(shù)組是相同類型數(shù)據(jù)的有序集合
  • 數(shù)組描述的是相同類型的若干個(gè)數(shù)據(jù),按照一定的先后次序排列組合而成
  • 其中,每一個(gè)數(shù)據(jù)稱作一個(gè)數(shù)組元素,每個(gè)數(shù)組元素可以通過(guò)一個(gè)下標(biāo)來(lái)訪問(wèn)它們。

數(shù)組的聲明和創(chuàng)建

首先必須聲明數(shù)組變量,才能在程序中使用數(shù)組。下面是聲明數(shù)組變量的語(yǔ)法:

dataType[] arrayRefVar;//首選方法
或
dataType arrayRefVar[];

Java語(yǔ)言使用new操作符來(lái)創(chuàng)建數(shù)組,語(yǔ)法如下:

dataType[] arrayRefVar = new dataType[arraySize];

數(shù)組的元素是通過(guò)索引訪問(wèn)的,數(shù)組索引從0開(kāi)始。

獲取數(shù)組長(zhǎng)度:arrays.length

數(shù)組的創(chuàng)建的初始化方式:

1.動(dòng)態(tài)初始化

int[] a = new int[5];

int[0] = 1; int[1] = 2;int[2] = 3;int[3] = 4;int[4] = 5;

2.靜態(tài)初始化

int[] b = new int[]{1,2,3,4,5};

int[] c = {1,2,3,4,5};

3.數(shù)組的默認(rèn)初始化

數(shù)組引用類型,它的元素相當(dāng)于類的實(shí)例變量,因此數(shù)組一經(jīng)分配空間,其中的每個(gè)元素也被按照實(shí)例變量同樣的方式被隱式初始化。

數(shù)組的四個(gè)基本特點(diǎn)

  • 其長(zhǎng)度是確定的。數(shù)組一旦被創(chuàng)建,它的大小就是不可以改變的。
  • 其元素必須是相同類型,不允許出現(xiàn)混合類型
  • 數(shù)組中的元素可以是任何數(shù)據(jù)類型,包括基本類型和引用類型
  • 數(shù)組變量屬引用類型,數(shù)組也可以看成是對(duì)象,數(shù)組中每個(gè)元素相當(dāng)于該對(duì)象的成員變量。數(shù)組本身就是對(duì)象,Java中對(duì)象是在堆中的,因此數(shù)組無(wú)論保存原始類型還是其他對(duì)象類型,數(shù)組對(duì)象本身就在堆中。

數(shù)組邊界

下標(biāo)合法區(qū)間:[0,length-1],如果越界就會(huì)報(bào)錯(cuò);

ArrayIndexOutOfBoundsException:數(shù)組下標(biāo)越界異常

小結(jié)

  • 數(shù)組是相同數(shù)據(jù)類型(數(shù)據(jù)類型可以為任意類型)的有序集合
  • 數(shù)組也是對(duì)象。數(shù)組元素相當(dāng)于對(duì)象的成員變量
  • 數(shù)組長(zhǎng)度的是確定的,不可變的。如果越界就會(huì)報(bào)錯(cuò):ArrayIndexOutOfBoundsException

數(shù)組的使用

package com.cnblogs;
/*
 * 本類用于測(cè)試數(shù)組01	遍歷數(shù)組
 */
public class TestArr1 {
	public static void main(String[] args) {
		int[] arr = {1,2,3,4,5,6,7,8,9};
		//遍歷數(shù)組
		for(int i = 0; i < arr.length ; i++) {
			System.out.print(arr[i] + " ");
		}
		System.out.println();
		System.out.println("=============================");
		//利用增強(qiáng)for循環(huán)遍歷數(shù)組
		for(int x : arr) {
			System.out.print(x + " ");
		}
		System.out.println();
		System.out.println("=============================");
		//使用自己定義的遍歷數(shù)組方法
		printArr(arr);
	}
	//定義一個(gè)遍歷數(shù)組的方法
	public static void printArr(int[] arr) {
		for(int i = 0; i < arr.length ; i++) {
			System.out.print(arr[i] + " ");
		}
	}
}

多維數(shù)組

  • 多維數(shù)組可以看成是數(shù)組的數(shù)組,比如二維數(shù)組就是一個(gè)特殊的數(shù)組,其每一個(gè)元素都是一個(gè)一維數(shù)組。
  • 二維數(shù)組
int[][] a = new int[2][5]//兩行,五列
package com.cnblogs;
/*
 * 本類用于測(cè)試數(shù)組01	遍歷二維數(shù)組
 */
public class TestArr2 {
	public static void main(String[] args) {
		int[][] arr = {{1,2},{2,3},{3,4},{4,5}};
		for(int i = 0 ; i < arr.length ; i++) {
			for(int j = 0 ; j < arr[i].length ; j++) {
				System.out.print(arr[i][j] + " ");
			}
			System.out.println();
		}
	}
}

Arrays類

  • 數(shù)組工具類java.util.Arrays
  • 由于數(shù)組對(duì)象本身并沒(méi)有什么方法可以供我們調(diào)用,但API中提供了一個(gè)工具類Arrays供我們使用,從而可以對(duì)數(shù)據(jù)對(duì)象進(jìn)行一些基本操作
  • 查看JDK幫助文檔
  • Arrays類中的方法都是static修飾的靜態(tài)方法,在使用的時(shí)候可以直接使用類名進(jìn)行調(diào)用,而“不用”使用對(duì)象來(lái)調(diào)用(是“不用”而不是“不能”)
  • 具有以下常用功能
    • 給數(shù)組賦值:通過(guò)fill方法
    • 對(duì)數(shù)組排序:通過(guò)sort方法,按升序
    • 比較數(shù)組:通過(guò)equals方法比較數(shù)組中元素是否相等
    • 查找數(shù)組元素:通過(guò)binarySearch方法能對(duì)排序好的數(shù)組進(jìn)行二分查找法操作
    • 把數(shù)組賦值成一個(gè)指定長(zhǎng)度的新數(shù)組:通過(guò) Arrays.copyOf(數(shù)組,新的長(zhǎng)度)方法
      • 新數(shù)組的長(zhǎng)度 大于 原數(shù)組, 相當(dāng)于復(fù)制,并增加位置
      • 新數(shù)組的長(zhǎng)度 小于 原數(shù)組, 相當(dāng)于截取一部分?jǐn)?shù)據(jù)
package com.cnblogs;
/*
 * 本類用于測(cè)試數(shù)組03	Arrays類
 */
//導(dǎo)入Arrays類
import java.util.Arrays;
public class TestArr3 {
	public static void main(String[] args) {
		int[] arr = {1,2,3,4,5,6,28,15,13,9};
		System.out.println(arr);//[I@3fb6a447  這里打印的是內(nèi)存地址
		//打印數(shù)組元素
		System.out.println(Arrays.toString(arr));//[1, 2, 3, 4, 5, 6, 28, 15, 13, 9]
		//數(shù)組進(jìn)行排序,升序
        Arrays.sort(arr);
        System.out.println(Arrays.toString(arr));//[1, 2, 3, 4, 5, 6, 9, 13, 15, 28]
        //數(shù)組的填充
        Arrays.fill(arr,6);
        System.out.println(Arrays.toString(arr));//[6, 6, 6, 6, 6, 6, 6, 6, 6, 6]
        Arrays.fill(arr,2,4,8);//填充2-4  包括2 不包括4
        System.out.println(Arrays.toString(arr));//[6, 6, 8, 8, 6, 6, 6, 6, 6, 6]
	}
}

總結(jié)

本篇文章就到這里了,希望能夠幫到您,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • Spring整合Redis完整實(shí)例代碼

    Spring整合Redis完整實(shí)例代碼

    這篇文章主要介紹了Spring整合Redis完整實(shí)例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-04-04
  • java中對(duì)象和Map互相轉(zhuǎn)換的幾種常見(jiàn)方式舉例

    java中對(duì)象和Map互相轉(zhuǎn)換的幾種常見(jiàn)方式舉例

    Map在日常開(kāi)發(fā)應(yīng)用中的頻率很高,最常用的實(shí)現(xiàn)類是HashMap和有序的TreeMap,下面這篇文章主要給大家介紹了關(guān)于java中對(duì)象和Map互相轉(zhuǎn)換的幾種常見(jiàn)方式舉例,需要的朋友可以參考下
    2024-01-01
  • Java中的字符串常量池詳細(xì)介紹

    Java中的字符串常量池詳細(xì)介紹

    這篇文章主要介紹了Java中的字符串常量池詳細(xì)介紹,JVM為了減少字符串對(duì)象的重復(fù)創(chuàng)建,其維護(hù)了一個(gè)特殊的內(nèi)存,這段內(nèi)存被成為字符串常量池或者字符串字面量池,需要的朋友可以參考下
    2015-01-01
  • 詳解Mybatis逆向工程中使用Mysql8.0版本驅(qū)動(dòng)遇到的問(wèn)題

    詳解Mybatis逆向工程中使用Mysql8.0版本驅(qū)動(dòng)遇到的問(wèn)題

    今天在使用 8.0.12 版的 mysql 驅(qū)動(dòng)時(shí)遇到了各種各樣的坑。這篇文章主要介紹了詳解Mybatis逆向工程中使用Mysql8.0版本驅(qū)動(dòng)遇到的問(wèn)題,感興趣的小伙伴們可以參考一下
    2018-10-10
  • Java編程簡(jiǎn)單應(yīng)用

    Java編程簡(jiǎn)單應(yīng)用

    本文主要介紹了三個(gè)簡(jiǎn)單Java小程序———1、HelloWorld(HelloWorld的來(lái)源);2、輸出個(gè)人信息3、輸出特殊圖案。具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧
    2017-02-02
  • Spring之ShutDown?Hook死鎖現(xiàn)象解讀

    Spring之ShutDown?Hook死鎖現(xiàn)象解讀

    這篇文章主要介紹了Spring之ShutDown?Hook死鎖現(xiàn)象解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • SpringBoot之解決多個(gè)定時(shí)任務(wù)阻塞的問(wèn)題

    SpringBoot之解決多個(gè)定時(shí)任務(wù)阻塞的問(wèn)題

    這篇文章主要介紹了SpringBoot之解決多個(gè)定時(shí)任務(wù)阻塞的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • Java中的有限狀態(tài)機(jī)(設(shè)計(jì)模式——狀態(tài)模式)

    Java中的有限狀態(tài)機(jī)(設(shè)計(jì)模式——狀態(tài)模式)

    這篇文章主要介紹了Java中的有限狀態(tài)機(jī)(設(shè)計(jì)模式——狀態(tài)模式),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • Spring中獲取Bean方法上的自定義注解問(wèn)題解析

    Spring中獲取Bean方法上的自定義注解問(wèn)題解析

    這篇文章主要介紹了Spring中如何獲取Bean方法上的自定義注解,基本的思路就是通過(guò)Spring提供的ApplicationContext#getBeansWithAnnotation+反射來(lái)實(shí)現(xiàn),需要的朋友可以參考下
    2023-06-06
  • MyBatis常用標(biāo)簽大全

    MyBatis常用標(biāo)簽大全

    這篇文章主要介紹了MyBatis常用標(biāo)簽大全的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-12-12

最新評(píng)論