激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - Java教程 - 詳解Java數(shù)組的一維和二維講解和內(nèi)存顯示圖

詳解Java數(shù)組的一維和二維講解和內(nèi)存顯示圖

2023-05-09 01:03未知服務(wù)器之家 Java教程

目錄 一.數(shù)組的認(rèn)識 二.一維數(shù)組的用法 2.1 數(shù)組的創(chuàng)建 2.2數(shù)組的使用 2.3數(shù)組內(nèi)存原理 2.3.1Java虛擬機內(nèi)存劃分 2.3.2數(shù)組內(nèi)存示例圖 三.二維數(shù)組的認(rèn)識 四.數(shù)組作為方法參數(shù)和返回值 五.Java常用API 5.1輸出數(shù)組 5.2數(shù)組轉(zhuǎn)集合 5.3數(shù)組中

目錄
  • 一.數(shù)組的認(rèn)識
  • 二.一維數(shù)組的用法
    • 2.1 數(shù)組的創(chuàng)建
    • 2.2數(shù)組的使用
    • 2.3數(shù)組內(nèi)存原理
      • 2.3.1Java虛擬機內(nèi)存劃分
      • 2.3.2數(shù)組內(nèi)存示例圖
  • 三.二維數(shù)組的認(rèn)識
    • 四.數(shù)組作為方法參數(shù)和返回值
      • 五.Java常用API
        • 5.1輸出數(shù)組
          • 5.2數(shù)組轉(zhuǎn)集合
            • 5.3數(shù)組中是否包含某個值 Arrays.asList().contains()
              • 5.4數(shù)組排序Arrays.sort()
                • 5.5數(shù)組二分查找Arrays.binarySearch()
                • 總結(jié)

                  一.數(shù)組的認(rèn)識

                  在C語言里,我們也曾學(xué)習(xí)過數(shù)組,數(shù)組是什么?數(shù)組就相當(dāng)于一個容器,存放相同類型數(shù)據(jù)的容器。而數(shù)組的本質(zhì)上就是讓我們能 "批量" 創(chuàng)建相同類型的變量。

                  注:容器是固定了大小的,不可改變的那種,例如:礦泉水瓶子、汽油罐、衣柜等容量大小不一的容器。

                  二.一維數(shù)組的用法

                  2.1 數(shù)組的創(chuàng)建

                  數(shù)組的初始化有2種形式

                  1、靜態(tài)初始化(固定內(nèi)容)

                  2、動態(tài)初始化(固定長度)

                  靜態(tài)初始化:指在數(shù)組聲明的同時,直接給數(shù)組引用賦值 ,不需要申明長度數(shù)據(jù)類型[ ]數(shù)組名稱 = new 數(shù)據(jù)類型 [ ]{ 初始化數(shù)據(jù) };

                  示例:int[ ]arr = new int[ ]{1, 2, 3};

                  省略方式:數(shù)據(jù)類型 [ ] 數(shù)組名稱 = { 初始化數(shù)據(jù) }; 示例:int [ ]arr = {1, 2, 3};

                  注:省略方式不允許先聲明后賦值,只能聲明同時直接賦值。

                  例如:int [ ]arr3; arr3 = {} //編譯出錯

                  動態(tài)初始化:指數(shù)組聲明和數(shù)組引用賦值分開。根據(jù)數(shù)組定義方式的不同,又分為兩種。

                  第一種:直接引用相同數(shù)組進行賦值。

                  例如:int[ ] arr=arr;直接將數(shù)組arr賦值給了arr;注:一定得相同類型的數(shù)組

                  第二種:數(shù)據(jù)類型 [ ]數(shù)組名稱 = new 數(shù)據(jù)類型 [數(shù)組長度];

                  例如:int [ ]arr1 = int[10]; int arr1[0] = 0;

                  2.2數(shù)組的使用

                  每一個存儲到數(shù)組的元素,都會自動的擁有一個編號,從0開始,這個自動編號稱為數(shù)組索引 (index),可以通過數(shù)組的索引訪問到數(shù)組中的元素。 數(shù)組的長度屬性: 每個數(shù)組都具有長度,而且是固定的,Java中賦予了數(shù)組的一個屬性,可以獲取到數(shù)組的長度,語句為:數(shù)組名。length,屬性length的執(zhí)行結(jié)果是數(shù)組的長度,int類型結(jié)果。由次可以推斷出,數(shù)組的最大索引值為:數(shù)組名。length-1。

                  public static void main(String[] args) {
                  	 int[] arr = new int[]{1,2,3,4,5}; 
                  	 //打印數(shù)組的長度,輸出結(jié)果是5
                  	  System.out.println(arr.length);
                      //打印對應(yīng)數(shù)組的值,輸出結(jié)果為1
                        System.out.println(arr[0]);
                  }

                  2.3數(shù)組內(nèi)存原理

                  在Java中,內(nèi)存是非常非常重要的,作用:運行程序。我們編寫的程序都是存放在硬盤當(dāng)中的,而在硬盤里的程序是不會運行的,必須得在內(nèi)存當(dāng)中才能運行,運行完畢后會清空內(nèi)存。 Java虛擬機要運行程序,必須要對內(nèi)存進行空間的分配和管理。

                  2.3.1Java虛擬機內(nèi)存劃分

                  Java為了提高效率,把內(nèi)存進行了劃分,從而使每一片區(qū)域都有特點的處理數(shù)據(jù)方式和內(nèi)存管理方式。

                  jvm的內(nèi)存劃分:

                  區(qū)域名稱 作用
                  寄存器 給CPU使用,和我們開發(fā)無關(guān)
                  本地方法棧 JVM在使用操作系統(tǒng)功能的時候使用,和我們開發(fā)無關(guān)
                  方法區(qū) 存儲可以運行的class文件
                  堆內(nèi)存 存儲對象或者數(shù)組,new來創(chuàng)建的,都存儲在堆內(nèi)存
                  方法棧 方法運行時使用的內(nèi)存,比如main方法運行,進入方法棧中執(zhí)行

                  此處我們不詳細(xì)講解,只講解與數(shù)組有關(guān)的堆區(qū)間。

                  1.棧(Stack): 存放的都是方法中的局部變量。方法的運行一定要在棧當(dāng)中運行局部變量:方法的參數(shù),或者是方法幾內(nèi)部的變量 作用域: 一旦超出作用域,立刻從棧內(nèi)存當(dāng)中消失

                  2.堆(Heap) : 凡是new出來的東西都在堆中

                  2.3.2數(shù)組內(nèi)存示例圖

                  詳解Java數(shù)組的一維和二維講解和內(nèi)存顯示圖詳解Java數(shù)組的一維和二維講解和內(nèi)存顯示圖

                  5.2數(shù)組轉(zhuǎn)集合

                  Arrays.asList()

                  String[] array2 = {"a", "b", "c", "d"};
                  	System.out.println(array2);  
                  	List list = new ArrayList(Arrays.asList(array2));
                  	System.out.println(list);   // [a, b, c, d]
                  	list.add("GG");
                  	System.out.println(list);  // [a, b, c, d, GG]

                  5.3數(shù)組中是否包含某個值 Arrays.asList().contains()

                  String[] array = { "a", "b", "c", "d", "e" };
                  boolean isEle = Arrays.asList(array).contains("a");
                  System.out.println(isEle);

                  5.4數(shù)組排序Arrays.sort()

                   int[] array = { 3, 1, 2 };
                   System.out.println(Arrays.sort(array));
                  //輸出:1,2,3

                  5.5數(shù)組二分查找Arrays.binarySearch()

                  int[] array = { 1,2,4,5,3,7,8 };
                  System.out.println(Arrays.binarySearch(array,5));
                  //輸出4

                  以上并不是全部,只是列舉了一些常用的類方法。

                  總結(jié)

                  數(shù)組的重點在于了解內(nèi)存存儲的數(shù)據(jù),還有如何使用數(shù)組的數(shù)據(jù),如何快捷使用對應(yīng)的類方法。

                  原文地址:https://blog.csdn.net/m0_74097410/article/details/129566496

                  延伸 · 閱讀

                  精彩推薦
                  主站蜘蛛池模板: 神秘电影91| 免费在线国产 | 毛片一区二区三区四区 | av色先锋 | 国产美女爽到喷白浆的 | 毛片毛片免费看 | 99国产精品欲a| 日本高清无遮挡 | 91成人精品 | 精品一区二区在线观看视频 | 在线1区 | 色网免费观看 | 一区国产精品 | 国产在线观看福利 | 全黄性性激高免费视频 | 亚洲视频在线视频 | 午夜视频国产 | 精国品产一区二区三区有限公司 | 蜜桃网在线观看 | 一道本不卡一区 | 日韩精品中文字幕在线播放 | 青青草国产在线视频 | 国内精品久久久久久久影视红豆 | 少妇一级淫片高潮流水电影 | 91久久国产综合精品女同国语 | 久久精品.com| 欧美一级爱爱 | 日韩.www| 男女视频免费看 | 91情侣偷在线精品国产 | 人成免费网站 | 成人福利在线 | 免费国产成人高清在线看软件 | 在线天堂中文字幕 | 国产精品亚洲一区二区三区久久 | 久久久久久久久日本理论电影 | 欧美成年性h版影视中文字幕 | 99热99精品| 亚洲成人福利网站 | 精品一区二区三区在线观看国产 | 欧美亚洲黄色片 |