真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

java中List中set方法和add方法的區(qū)別有哪些

這篇文章主要介紹了java中List中set方法和add方法的區(qū)別有哪些的相關(guān)知識(shí),內(nèi)容詳細(xì)易懂,操作簡(jiǎn)單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇java中List中set方法和add方法的區(qū)別有哪些文章都會(huì)有所收獲,下面我們一起來看看吧。

在臨桂等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站制作、成都做網(wǎng)站 網(wǎng)站設(shè)計(jì)制作按需策劃,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),營(yíng)銷型網(wǎng)站建設(shè),外貿(mào)網(wǎng)站制作,臨桂網(wǎng)站建設(shè)費(fèi)用合理。

前言

在Java中的常用的集合接口List中有兩個(gè)非常相似的方法:

E set(int index, E element);

void add(int index, E element);

這兩個(gè)方法都是在集合的指定位置插入指定的元素,那么這兩個(gè)方法到底有什么區(qū)別呢?接下來我們通過ArrayList這個(gè)我們常用集合實(shí)現(xiàn)來看一下這兩個(gè)方法的差異

相同點(diǎn)

首先我們來看一下這兩個(gè)方法在ArrayList中的相同點(diǎn)

他們都會(huì)在集合的指定位置插入新的元素,例如下面的例子:

#在集合的第2位插入一個(gè) F
# 通過add方法插入
List list = new ArrayList();
        list.add("A");
        list.add("B");
        list.add("C");
        System.out.println(list);

        list.add(2, "F");
        System.out.println(list);
        
#運(yùn)行結(jié)果:  [A, B, F, C]

#通過set方法插入
List list = new ArrayList();
        list.add("A");
        list.add("B");
        list.add("C");
        System.out.println(list);

        list.set(2, "F");
        System.out.println(list);
#運(yùn)行結(jié)果: [A, B, F]
  • 上述兩個(gè)方法中的element都不允許為null,如果為null的話會(huì)拋出NullPointerException

  • 上述兩個(gè)方法中的element對(duì)應(yīng)的類如果無法存入該集合,都會(huì)拋出ClassCastException異常

  • 上述兩個(gè)方法中的element對(duì)應(yīng)的類型如果無法存入該集合,都會(huì)拋出IllegalArgumentException異常

不同點(diǎn)

第一個(gè)不同點(diǎn)從上面的例子就可以看出來,add 方法是在指定位置插入新的值,然后將原先位置的元素
和原先位置之后的所有元素都向后移動(dòng)了一位,而 set 方法是直接覆蓋了原來的元素

#在集合的第2位插入一個(gè) F
# 通過add方法插入
List list = new ArrayList();
        list.add("A");
        list.add("B");
        list.add("C");
        System.out.println(list);

        list.add(2, "F");
        System.out.println(list);
        
#運(yùn)行結(jié)果:  [A, B, F, C]

#通過set方法插入
List list = new ArrayList();
        list.add("A");
        list.add("B");
        list.add("C");
        System.out.println(list);

        list.set(2, "F");
        System.out.println(list);
#運(yùn)行結(jié)果: [A, B, F]

add 方法對(duì)于index的取值范圍是 0<= index <= size(),也就是說add方法可以在當(dāng)前集合的最后一個(gè)元素后面再添加一個(gè)新元素;set 方法對(duì)于index的取值范圍是 0< index < size(),也就是說set方法只能覆蓋當(dāng)前已有的元素,取值范圍不能超出當(dāng)前集合元素的范圍

#通過add在當(dāng)前集合的第四個(gè)位置插入F
 List list = new ArrayList();
        list.add("A");
        list.add("B");
        list.add("C");
        System.out.println(list);
        list.add(3, "F");
        System.out.println(list);
        
#運(yùn)行結(jié)果: [A, B, C, F]

#通過set在當(dāng)前集合的第四個(gè)位置插入F
 List list = new ArrayList();
        list.add("A");
        list.add("B");
        list.add("C");
        System.out.println(list);
        list.set(3, "F");
        System.out.println(list);
        
#運(yùn)行結(jié)果: 拋出NullPointerException

關(guān)于“java中List中set方法和add方法的區(qū)別有哪些”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對(duì)“java中List中set方法和add方法的區(qū)別有哪些”知識(shí)都有一定的了解,大家如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


文章名稱:java中List中set方法和add方法的區(qū)別有哪些
標(biāo)題鏈接:http://weahome.cn/article/poepsh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部