日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

第11天学习Java的笔记(数组注意事项)

發布時間:2025/3/13 java 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第11天学习Java的笔记(数组注意事项) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

39天

Java的內存劃分

主要分為以下5個部分:

1.棧(Stack):存放的都是方法中的局部變量。方法的運行一定要在棧當中運行。

? 局部變量:方法的參數,或者是方法{}內部的變量。

? 作用域:一旦超出作用域,立刻從棧內存當中消失。

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

? 堆內存里面的東西都有一個地址值:16進制

? 堆內存里面的數據u,都有默認值,規則:

? 如果是整數 默認為0

? 如果是浮點數 默認為0.0

? 如果是字符 默認為‘\u0000’

? 如果是浮點數 默認為false

? 如果是浮點數 默認為null

3.方法區(Method Area):存儲.class相關信息,包含方法的信息。

4.本地方法棧(Native Method Stack):與操作系統相關。

5.寄存器(pc Register):與CPU相關。

一個數組的內存圖

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-5dqYdK1O-1607311649531)(F:\Java\Learn\day11\day11.assets\image-20201207093427628.png)]

兩個數組的內存圖


[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-NWEQVfJc-1607311649535)(F:\Java\Learn\day11\day11.assets\image-20201207100123717.png)]

兩個數組共同指向一個內存空間


[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-w0u8uAZ3-1607311649536)(F:\Java\Learn\day11\day11.assets\image-20201207102211520.png)]

數組索引越界異常

package day1101;/* * 數組得索引編號從0開始,一直到“數組得長度-1”為止 * * 如果訪問數組元素得時候,索引編號并不存在,那么將會發生 * 數組索引越界異常 * ArrayIndexOutOfBoundsExceptions * 原因:索引編號寫錯了 * 解決:修改成為存在得正確索引編號* */public class Demo01ArrayIndex {public static void main(String[] args) {int[] array = { 15, 25, 35 };System.out.println(array[0]);//15System.out.println(array[1]);//25System.out.println(array[2]);//35//System.out.println(array[3]);//報錯超出索引范圍} }

空指針異常

package day1101;/*所有的引用類型變量,都可以賦值為一個null值,但是代表其中什么都沒有 * * 數組必須進行new初始化才能使用其中的元素。 * 如果只是賦值了一個null,沒有進行new創建, * 那么將會發生; * 空指針異常NullPointerException * * 原因:忘了new * 解決:補上new * */public class Demo01ArrayNull {public static void main(String[] args) {//int[] array;//array = new int[3];//System.out.println(array[0]);//沒有new的話Variable 'array' might not have been initializedint[] array = null;array = new int[3];System.out.println(array[0]);//空指針異常 0} }

獲取數組的長度

package day1101; /* * 獲取數組長度的格式: * 數組名稱.length * 這將會得到一個int數字,代表數組的長度 * * 數組一旦創建,程序運行期間,長度不可改變 * */ public class Demo03ArrayLength {public static void main(String[] args) {int[] arrayA = new int[3];int[] arrayB = { 10, 20, 30, 40};System.out.println(arrayA.length);//3System.out.println(arrayB.length);//4int[] arrayC = new int[5];System.out.println(arrayC.length);//5arrayC = new int[7];System.out.println(arrayC.length);//7} }


[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-crYJYVje-1607311649540)(F:\Java\Learn\day11\day11.assets\image-20201207111226752.png)]

數組長度的不可變說的是,只要在堆里面創建了new了新的數組,就是新的不可以改變,但是左邊的數組的引用是可以改變的。

遍歷數組

package day1101;/** 遍歷數組,說的就是對數組當中的每一個元素進行逐一,挨個兒處理,默認的處理方式就是打印輸出。* */ public class Demo04Array {public static void main(String[] args) {int[] array = {10, 20, 30, 40};for (int i = 0; i < array.length; i++) {System.out.println("第" + i + "個元素為:" + array[i]);}//可以通過輸入array.fori來出現上述for循環} }

總結

以上是生活随笔為你收集整理的第11天学习Java的笔记(数组注意事项)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。