App下載

Java基礎(chǔ)知識(shí)之?dāng)?shù)組的介紹及一維數(shù)組的概述

猿友 2021-07-27 15:49:57 瀏覽數(shù) (1947)
反饋

在Java語(yǔ)言中,我們可以使用變量來(lái)存儲(chǔ)一個(gè)信息。但如果我們有很多的信息,那么就要?jiǎng)?chuàng)建很多的變量來(lái)存儲(chǔ)值,顯然這樣做會(huì)顯得代碼非常的臃腫,不利于閱讀或管理。隨著處理的信息越來(lái)越多,我們就可以用一個(gè)數(shù)組來(lái)講這些數(shù)據(jù)類(lèi)型一樣的數(shù)值存儲(chǔ)在一塊兒,在一定程度上縮短或簡(jiǎn)化代碼,提高應(yīng)用程序的效率。

一、數(shù)組的概念

1、簡(jiǎn)介

數(shù)組(Array),在 Java 中也屬于一種數(shù)據(jù)類(lèi)型,區(qū)別于 int,String 之類(lèi)的基本數(shù)據(jù)類(lèi)型,數(shù)組是引用數(shù)據(jù)類(lèi)型的一種。數(shù)組是有序數(shù)組的集合,里面的每個(gè)元素都必須具有相同的類(lèi)型,可以用不同的數(shù)組名加上不同的下標(biāo)來(lái)定位數(shù)組中唯一的元素。

2、特性

在大部分計(jì)算機(jī)語(yǔ)言中,數(shù)組基本上都具有一下三大基本特性:

(1)一致性:數(shù)組中存儲(chǔ)的所有元素都必須是相同數(shù)據(jù)類(lèi)型的。

(2)有序性:數(shù)組中的元素是有序的,可以通過(guò)數(shù)組下標(biāo)來(lái)訪(fǎng)問(wèn)的。

(3)不可變性:數(shù)組一旦初始化,數(shù)組中的元素個(gè)數(shù)就不可變了。

3、特點(diǎn)

(1)數(shù)組可分為一維數(shù)組、二維數(shù)組以及多維數(shù)組。

(2)數(shù)組中數(shù)值元素的默認(rèn)值是0,引用元素的默認(rèn)值是null。

(3)數(shù)組的索引都是從0開(kāi)始,如果數(shù)組內(nèi)有n個(gè)元素,那么最大下標(biāo)就是(n-1)。

(4)數(shù)組元素的類(lèi)型可以是任何的數(shù)據(jù)類(lèi)型,包括數(shù)組這一個(gè)復(fù)合數(shù)據(jù)類(lèi)型。

(5)數(shù)組類(lèi)型是從抽象類(lèi) Array 派生的引用類(lèi)型。

二、一維數(shù)組的聲明和分配

一維數(shù)組(one-dimensional array)本質(zhì)上是一組相同類(lèi)型數(shù)據(jù)的線(xiàn)性集合,是數(shù)組中最簡(jiǎn)單的一種數(shù)組。

創(chuàng)建一維數(shù)組,聲明格式:

type[] arr; // 數(shù)據(jù)類(lèi)型[] 數(shù)組名;

以上聲明格式中,數(shù)據(jù)類(lèi)型既可以是基本數(shù)據(jù)類(lèi)型,也可以是引用數(shù)據(jù)類(lèi)型。數(shù)組名可以是任意合法的變量名。例如:

int[] score; // 數(shù)組內(nèi)數(shù)據(jù)類(lèi)型為整型,用來(lái)存儲(chǔ)學(xué)生的成績(jī)
String[] name; //  數(shù)組內(nèi)數(shù)據(jù)類(lèi)型為字符串型,用來(lái)存儲(chǔ)學(xué)生的名字
double[] hight; // 數(shù)組內(nèi)數(shù)據(jù)類(lèi)型為浮點(diǎn)型,用來(lái)存儲(chǔ)學(xué)生的身高

值得注意的是,在聲明的時(shí)候,不需要給數(shù)組規(guī)定長(zhǎng)度,如:

int[10] score; // 這是錯(cuò)誤聲明

在聲明了數(shù)組之后,就可以給數(shù)組分配空間:

score = new int[10];
name = new String[20];
hight = new double[30];

當(dāng)然,也可以直接在聲明數(shù)組的時(shí)候,直接給數(shù)組進(jìn)行分配空間,具體格式如下:

type[] arr=new type[10]; // 數(shù)據(jù)類(lèi)型[] 數(shù)組名=new 數(shù)據(jù)類(lèi)型[10];

例如,聲明一個(gè) int 類(lèi)型,長(zhǎng)度為5的數(shù)組 arr。

int[] arr=new int[5];

執(zhí)行 arr 數(shù)組后,在內(nèi)存中的格式如下:

一維數(shù)組的內(nèi)存格式

注:在這里,一旦聲明了數(shù)組的大小,那么就不可改變。因此數(shù)組的長(zhǎng)度是必須要聲明的,不可少!

三、初始化一維數(shù)組的方法

已經(jīng)將數(shù)組聲明好了,也分配好了空間,那么就需要將數(shù)組應(yīng)用起來(lái)。

(1)使用 new 指定數(shù)組的大小后,并對(duì)數(shù)組進(jìn)行初始化賦值。

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

此時(shí),arr 這個(gè)數(shù)組內(nèi)的每個(gè)位置都有一個(gè)相對(duì)應(yīng)的初始值了。

(2)直接通過(guò) new 直接指定數(shù)組中的值。

int[] arr=new int[]{1,2,3,4,5}sh

例如,聲明一個(gè) int 類(lèi)型,長(zhǎng)度為5的數(shù)組 arr。

int[] arr=new int[5];

執(zhí)行 arr 數(shù)組后,在內(nèi)存中的格式如下:

一維數(shù)組的內(nèi)存格式

注:在這里,一旦聲明了數(shù)組的大小,那么就不可改變。因此數(shù)組的長(zhǎng)度是必須要聲明的,不可少!

三、初始化一維數(shù)組的方法

已經(jīng)將數(shù)組聲明好了,也分配好了空間,那么就需要將數(shù)組應(yīng)用起來(lái)。

(1)使用 new 指定數(shù)組的大小后,并對(duì)數(shù)組進(jìn)行初始化賦值。

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

此時(shí),arr 這個(gè)數(shù)組內(nèi)的每個(gè)位置都有一個(gè)相對(duì)應(yīng)的初始值了。

(2)直接通過(guò) new 直接指定數(shù)組中的值。

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

上面這個(gè)式子的表達(dá)意思如上面的一樣,同樣都是賦給了 arr 數(shù)組初始值。

值得注意的是,該式子不能既指定數(shù)組長(zhǎng)度,又要指定內(nèi)容。

int[] arr=new int[5]{1,2,3,4,5}; // 這是錯(cuò)誤寫(xiě)法

(3)直接在數(shù)組聲明后指定數(shù)值。

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

如果程序中已經(jīng)對(duì)數(shù)組聲明過(guò)了,那么只能使用上面兩種賦值方法。如果數(shù)組還未聲明,那么就可以使用第三種方法進(jìn)行賦值。但是要注意的是,第三種方法必須是聲明和初始化同步操作,不能分布,否則會(huì)報(bào)錯(cuò)。

int[] arr;
arr = {1,2,3,4,5};
// 該表示方法是錯(cuò)誤的

四、總結(jié)

以上就是關(guān)于 Java 數(shù)組的基本概念、特性和特點(diǎn)的介紹,以及數(shù)組中的一維數(shù)組的聲明,以及進(jìn)行初始化的方法詳解的全部?jī)?nèi)容。想要了解更多相關(guān) Java 數(shù)組其他分類(lèi)的內(nèi)容,可以搜索W3Cschool里面的相關(guān)文章。如果本文對(duì)大家的學(xué)習(xí)有所幫助,還希望大家能夠多多關(guān)注和支持我們!


0 人點(diǎn)贊