欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java實現(xiàn)更新順序表中的指定元素的示例

 更新時間:2023年06月07日 11:32:08   作者:酒國  
本文主要介紹了Java實現(xiàn)更新順序表中的指定元素的示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

一、思路

1.定義一個 pos 變量為要更新的位置,定義一個 value 變量為更新后的數(shù)值.
2.順序表不能是空的,就肯定不可以更新元素.
3.pos位置要合法,要保證 pos 位置是處在順序表范圍內的.
4.更新功能不需要考慮擴容,因為不涉及到元素的增減.
5.更新的之前先獲取到 pos 位置的下標,更新的時候直接將 value 賦值給 pos 位置即可.

二、圖解

當前 pos 指向的是 2 下標,即 2 下標就是接下來要更新元素的位置,value 等于 100,即為接下來 pos 位置會更新為 100 。

更新后的圖示如下圖展示:

可以看到當前的順序表中的元素依然是 4 個(沒有改變),但是在 2 下標位置的元素已經改變了。

1、pos 位置不合法的情況

如上述圖片展示出來的情況,pos 位置不能超過順序表長度不能是負數(shù)下標。

2、順序表是空的情況

在當前的數(shù)組中沒有任何的元素,即為順序表是空的情況。

之前說過了,在更新元素之前要先獲取到更新位置的下標,但是此時根本就沒有一個元素,因此也就不可能獲取到下標。

三、代碼

class EmptyException extends RuntimeException {
    public EmptyException() {
        //這是一個提示順序表為空的異常
    }
    public EmptyException(String massage) {
        super(massage);
    }
}
// 更新 pos 位置的元素
public void set(int pos, int value) {
    if (isEmpty()) {
        //順序表有可能是空的 - 拋異常來提示
        //這里要注意的是此方法是用來更新的,即使是空間滿了也不需要擴容
        throw new EmptyException("當前順序表為空!??!");
    }
    //2.pos位置要合法 - 下標不為負數(shù),不超過數(shù)組長度
    if (pos < 0 || pos >= this.usedSize) {
        //查找位置的下標可能是負數(shù) - 也可能超過了順序表的長度 - 拋異常來提示
        throw new PosWrongfulException("set獲取元素的時候,pos位置不合法?。?!");
    }
    // 開始更新
    this.elem[pos] = value;  //賦值即可
}
public class MyArrayList {
    public static void main(String[] args) {
        ArrayList arrayList = new ArrayList();
        // 測試在順序表末尾插入一個元素的方法
        arrayList.add(1);
        arrayList.add(2);
        arrayList.add(3);
        // 測試在順序表中指定位置插入一個元素
        try{
            arrayList.add(1, 10);//將1下標的位置插入一個10
        }catch (PosWrongfulException e){ //包裹一下可能會拋出的異常
            e.printStackTrace();//如果有異常會提示
        }
        // 輸出更新之前的順序表元素
        arrayList.disPlay();
        System.out.println(); // 換行
        // 測試 set 方法 - 將 1 下標位置的元素的值改為 100
        arrayList.set(1, 100);
        // 打印更新之后的順序表中的元素
        arrayList.disPlay();
    }
}

可以看到此時 1 下標位置就成功改為了 100。

四、錯誤

如果 pos 位置不合法 的情況會是什么樣的

// 測試 get 方法 - 將 1 下標位置的元素的值改為 100
arrayList.set(4, 100);

如上述代碼所示,在 4 下標插入一個 100,因為順序表最大的下標是 3 因此此時超過了順序表的長度,即為不合法的情況。

可以看到此處就拋出了一個 位置不合法的異常。

如果 順序表為空 的情況會是什么樣的?

將之前寫的在順序表中插入元素的代碼注釋后,此時順序表中就是空的了。

當前拋出了一個順序表為空的異常。

到此這篇關于Java實現(xiàn)更新順序表中的指定元素的示例的文章就介紹到這了,更多相關Java 更新順序表的指定元素內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 基于Spring監(jiān)聽Binlog日志的方法詳解

    基于Spring監(jiān)聽Binlog日志的方法詳解

    MySQL 的二進制日志(binlog)有三種不同的格式,通常被稱為 binlog 模式,這三種模式分別是 Statement 模式、Row 模式和Mixed 模式,本文將給大家介紹如何基于Spring監(jiān)聽Binlog日志,需要的朋友可以參考下
    2024-09-09
  • springBoot接入阿里云oss的實現(xiàn)步驟

    springBoot接入阿里云oss的實現(xiàn)步驟

    這篇文章主要介紹了springBoot接入阿里云oss的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-01-01
  • Spring之異步任務@Async解讀

    Spring之異步任務@Async解讀

    這篇文章主要介紹了Spring之異步任務@Async,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • 實例分析Java單線程與多線程

    實例分析Java單線程與多線程

    本篇文章通過代碼實例給大家詳細講述了Java單線程與多線程的相關原理和知識點總結,需要的朋友可以學習下。
    2018-02-02
  • Apache DolphinScheduler完全設置東八區(qū)時區(qū)

    Apache DolphinScheduler完全設置東八區(qū)時區(qū)

    這篇文章主要為大家介紹了Apache DolphinScheduler完全設置東八區(qū)配置詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-11-11
  • 基于javamelody監(jiān)控springboot項目過程詳解

    基于javamelody監(jiān)控springboot項目過程詳解

    這篇文章主要介紹了基于javamelody監(jiān)控springboot項目過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11
  • kotlin基礎教程之類和繼承

    kotlin基礎教程之類和繼承

    這篇文章主要介紹了kotlin基礎教程之類和繼承的相關資料,需要的朋友可以參考下
    2017-05-05
  • 解決Spring Data Jpa 實體類自動創(chuàng)建數(shù)據(jù)庫表失敗問題

    解決Spring Data Jpa 實體類自動創(chuàng)建數(shù)據(jù)庫表失敗問題

    這篇文章主要介紹了解決Spring Data Jpa 實體類自動創(chuàng)建數(shù)據(jù)庫表失敗問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Java大數(shù)據(jù)處理的核心技術MapReduce框架

    Java大數(shù)據(jù)處理的核心技術MapReduce框架

    MapReduce是一種分布式計算框架,適用于大規(guī)模的數(shù)據(jù)處理。它將大數(shù)據(jù)分成多個小數(shù)據(jù)塊,通過Map和Reduce兩個階段對數(shù)據(jù)進行處理和分析。MapReduce框架具有可靠、高效、可擴展等特點,已經成為大數(shù)據(jù)處理的核心技術
    2023-05-05
  • Java刪除ArrayList中的重復元素的兩種方法

    Java刪除ArrayList中的重復元素的兩種方法

    在Java編程中,ArrayList是一種常用的集合類,它允許我們存儲一組元素,在某些情況下,我們可能需要移除其中重復的元素,只保留唯一的元素,下面介紹兩種常見的刪除ArrayList中重復元素的方法,需要的朋友可以參考下
    2024-12-12

最新評論