日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

java 数组数据类型_java基本数据类型和数组

發(fā)布時間:2024/9/27 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java 数组数据类型_java基本数据类型和数组 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

第一類:邏輯型boolean

第二類:文本型char

第三類:整數(shù)型(byte、short、int、long)

char類型占2個字節(jié)

short從-32768到32767

int從-2147483648,到2147483647共10位

long從-9223372036854775808到9223372036854775807共19位

第四類:浮點型(float、double)

在數(shù)學(xué)中0到1有無數(shù)個浮點數(shù);而計算機是離散的,所以表示的時候有誤差,計算機用精度(小數(shù)點后幾位來表示正確),比較浮點數(shù)時a==0.1是不合適的,應(yīng)該a-0.1==0;如果a是0.1,則即使有誤差 a-0.1==0因為a和0.1都被表示為一個有誤差的計算機二進制

數(shù)組

概念

同一種類型數(shù)據(jù)的集合。其實數(shù)組就是一個容器。

數(shù)組的好處

可以自動給數(shù)組中的元素從0開始編號,方便操作這些元素。

格式1:

元素類型[]?數(shù)組名?=?new?元素類型[元素個數(shù)或數(shù)組長度];

示例:int[]?arr?=?new?int[5];

格式2:

元素類型[]?數(shù)組名?=?new?元素類型[]{元素,元素,……};

int[]?arr?=?new?int[]{3,5,1,7};

int[]?arr?=?{3,5,1,7};

如果需要存儲大量的數(shù)據(jù),例如如果需要讀取100個數(shù),那么就需要定義100個變量,顯然重復(fù)寫100次代碼,是沒有太大意義的。如何解決這個問題,Java語言提供了數(shù)組(array)的數(shù)據(jù)結(jié)構(gòu),是一個容器可以存儲相同數(shù)據(jù)類型的元素,可以將100個數(shù)存儲到數(shù)組中。

1數(shù)組的概念

同一種類型數(shù)據(jù)的集合。其實數(shù)組就是一個容器。運算的時候有很多數(shù)據(jù)參與運算,那么首先需要做的是什么.不是如何運算而是如何保存這些數(shù)據(jù)以便于后期的運算,那么數(shù)組就是一種用于存儲數(shù)據(jù)的方式,能存數(shù)據(jù)的地方我們稱之為容器,容器里裝的東西就是數(shù)組的元素,?數(shù)組可以裝任意類型的數(shù)據(jù),雖然可以裝任意類型的數(shù)據(jù),但是定義好的數(shù)組只能裝一種元素,?也就是數(shù)組一旦定義,那么里邊存儲的數(shù)據(jù)類型也就確定了。

2?數(shù)組的好處

存數(shù)據(jù)和不存數(shù)據(jù)有什么區(qū)別嗎?數(shù)組的最大好處就是能都給存儲進來的元素自動進行編號.?注意編號是從0開始。方便操作這些數(shù)據(jù)。

例如?學(xué)生的編號,使用學(xué)號就可以找到對應(yīng)的學(xué)生。

3數(shù)組的格式

元素類型[]?數(shù)組名?=?new?元素類型[元素個數(shù)或數(shù)組長度];

示例:int[]?arr?=?new?int[5];

案例:

需求:?想定義一個可以存儲3個整數(shù)的容器

實現(xiàn):

1聲明數(shù)組變量

為了使用數(shù)組必須在程序中聲明數(shù)組,并指定數(shù)組的元素類型

=左半部分:

先寫左邊明確了元素類型?是int?,容器使用數(shù)組,那么如何來標識數(shù)組?.那么用一個特殊的符號[]中括號來表示。想要使用數(shù)組是需要給數(shù)組起一個名字的,那么我們在這里給這個數(shù)組起名字為x?.接著跟上等號。

代碼體現(xiàn):

int?[]?x

注意:int?x[]?也是一種創(chuàng)建數(shù)組的格式。推薦使用int?[]?x?的形式聲明數(shù)組。

2創(chuàng)建數(shù)組

=右半部分:

要使用一個新的關(guān)鍵字.叫做new。new?用來在內(nèi)存中產(chǎn)生一個容器實體,數(shù)據(jù)要存儲是需要有空間的,存儲很多數(shù)據(jù)的空間用new?操作符來開辟,new?int[3];?這個3是元素的個數(shù)。右邊這部分就是在內(nèi)存中定義了一個真實存在的數(shù)組,能存儲3個元素。

new?int[3]?做了兩件事情,首先使用new?int[3]?創(chuàng)建了一個數(shù)組,然后把這個數(shù)組的引用賦值給數(shù)組變量x。

int?[]?x=new?int[3];

x?是什么類型?

任何一個變量都得有自己的數(shù)據(jù)類型。注意這個x?不是int?類型的?。int?代表的是容器里邊元素的類型。那么x?是數(shù)組類型的。

數(shù)組是一種單獨的數(shù)據(jù)類型。數(shù)據(jù)類型分為2大派,分為基本數(shù)據(jù)類型和引用數(shù)據(jù)類型。?第二大派是引用數(shù)據(jù)類型。那么大家現(xiàn)在已經(jīng)接觸到了引用數(shù)據(jù)類型三種當中的一種。就是數(shù)組類型?[]?中括號就代表數(shù)組。

4、int[]?arr?=?new?int[5];在內(nèi)存中發(fā)生了什么?

內(nèi)存任何一個程序,運行的時候都需要在內(nèi)存中開辟空間.int[]?arr?=?new?int[5];?這個程序在內(nèi)存中是什么樣?這就涉及到了java虛擬機在執(zhí)行程序時所開辟的空間,那么java開辟啟動了多少空間呢?繼續(xù)學(xué)習(xí)java的內(nèi)存結(jié)構(gòu)。

數(shù)組的定義

格式1:

元素類型[]?數(shù)組名?=?new?元素類型[元素個數(shù)或數(shù)組長度];

示例:int[]?arr?=?new?int[5];

格式2:

元素類型[]?數(shù)組名?=?new?元素類型[]{元素,元素,……};

int[]?arr?=?new?int[]{3,5,1,7};

int[]?arr?=?{3,5,1,7};

注意:給數(shù)組分配空間時,必須指定數(shù)組能夠存儲的元素個數(shù)來確定數(shù)組大小。創(chuàng)建數(shù)組之后不能修改數(shù)組的大小。可以使用length?屬性獲取數(shù)組的大小。

遍歷數(shù)組

數(shù)組初始化

數(shù)組的格式

int[]?x?=?new?int[3];

x[0]?=?1;

x[1]?=?2;

另一種定義:該形式可以直接明確數(shù)組的長度,以及數(shù)組中元素的內(nèi)容

int[]?x?=?{?1,?2,?3?};

int[]?x=new?int[]{1,2,3};

初始化方式1:不使用運算符new

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

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

初始化方式2:

int[]?arr3=new?int[3];

arr3[0]=1;

arr3[1]=5;

arr3[2]=6;

如果數(shù)組初始化中不使用運算符new。需要注意:下列寫法是錯誤的。

int[]?arr;

arr={1,2,3,4,5};

此時初始化數(shù)組,必須將聲明,創(chuàng)建,初始化都放在一條語句中個,分開會產(chǎn)生語法錯誤。

所以只能如下寫:

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

數(shù)組遍歷

public?static?void?main(String[]?args)?{

int[]?x?=?{?1,?2,?3?};

for?(int?y?=?0;?y?

System.out.println(x[y]);

//?System.out.println("x["+y+"]="+x[y]);?打印效果?x[0]=1;

}?//?那么這就是數(shù)組的第一個常見操作.遍歷

}

數(shù)組中有一個屬性可以獲取到數(shù)組中元素的個數(shù),也就是數(shù)組的長度.?數(shù)組名.length

public?static?void?main(String[]?args)?{

int[]?x?=?{?1,?2,?3?};

for?(int?y?=?0;?y?

System.out.println(x[y]);

//?System.out.println("x["+y+"]="+x[y]);?打印效果?x[0]=1;

}?//?那么這就是數(shù)組的第一個常見操作.遍歷

}

數(shù)組的常見異常

數(shù)組中最常見的問題:

1. NullPointerException 空指針異常

原因: 引用類型變量沒有指向任何對象,而訪問了對象的屬性或者是調(diào)用了對象的方法。\

2. ArrayIndexOutOfBoundsException 索引值越界。

原因:訪問了不存在的索引值。

一數(shù)組角標越界異常:,注意:數(shù)組的角標從0開始。

public?static?void?main(String[]?args)?{

int[]?x?=?{?1,?2,?3?};

System.out.println(x[3]);

//java.lang.ArrayIndexOutOfBoundsException

}

二?空指針異常:

public?static?void?main(String[]?args)?{

int[]?x?=?{?1,?2,?3?};

x?=?null;

System.out.println(x[1]);

//?java.lang.NullPointerException

}

數(shù)組:

什么時候使用數(shù)組:當元素較多時為了方便操作這些數(shù)組,會先進行來臨時存儲,所使用的容器就是數(shù)組。

特點:

數(shù)組長度是固定的。

數(shù)組的內(nèi)存分析

二維數(shù)組

Arrays的使用

遍歷:?toString()????將數(shù)組的元素以字符串的形式返回

排序:?sort()????????將數(shù)組按照升序排列

查找:?binarySearch()在指定數(shù)組中查找指定元素,返回元素的索引,如果沒有找到返回(-插入點-1)?注意:使用查找的功能的時候,數(shù)組一定要先排序。

二維數(shù)組:實質(zhì)就是存儲是一維數(shù)組。

數(shù)組定義:

數(shù)組類型[][]?數(shù)組名?=?new?數(shù)組類型[一維數(shù)組的個數(shù)][每一個一維數(shù)組中元素的個數(shù)];

疑問:?為什么a.length?=?3,?a[0].length?=?4?

數(shù)組的初始化:

靜態(tài)初始化:

int?[][]?a?=?new?int[][]{?{12,34,45,89},{34,56,78,10},{1,3,6,4}?};

動態(tài)初始化:

文章內(nèi)容為轉(zhuǎn)載

總結(jié)

以上是生活随笔為你收集整理的java 数组数据类型_java基本数据类型和数组的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。