比較ArrayList和數組的區別

區別1:創建時的區別

一般數組在創建的時候都需要指定數組的大小,但是ArrayList不需要指定數組的大小

//創建一個ArrayList對象
ArrayList<String> myList = new ArrayList<String>();
//創建一個數組
String [] myList = new String[2];

區別2:賦值時的區別

//數組在存放對象的時候必須指明位置,但是ArrayList在存放對象的時候只需要調用對應的add方法就可以了,
//同時數組在添加元素的時候,如果出現數組下標越界的時候,此時就會導致進程異常終止
//ArrayList的賦值
String a = new String("test");
myList.add(a);
//數組的賦值
String a = new String("test");
myList[0] = a;

區別3:取數組大小的區別

//ArrayList求長度的方法
int thSize = myList.size();
//ArrayList求長度的方法
int theSize = myList.length;

區別4:刪除一個元素

//ArrayList刪除一個元素
myList.remove(1);
//數組刪除一個 元素
myList[1] = null;

區別5:判斷某個元素是否在數組中的區別

//判斷b是否在ArraList中
boolean isIn = myList.contains(b);
//判斷b是否在String數組中
boolean isIn = false;
for(String item : myList)
{if(b.equals(item)) {isIn = true;break;}
}

區別6:語法上

//數組在使用的時候必須遵循數組語法,但是ArrayList創建的是一個對象,因此在使用的時候只關注它的元素
//的類型,其他的都不關心

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/383868.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/383868.shtml
英文地址,請注明出處:http://en.pswp.cn/news/383868.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

linux C如何獲取服務器節點上所有網口的ip地址

http://blog.csdn.net/weiyuefei/article/details/22198659 之前項目原因&#xff0c;需要獲取當前服務器節點上所有網口的ip地址&#xff0c;但是當時由于時間比較緊&#xff0c;一直沒搞出來&#xff0c;最近沒那么忙了&#xff0c;又在網上找了一下&#xff0c;終于實現了這…

HDU1573-模線性方程

模線性方程的模板題。&#xff08;卡了一會&#xff0c;發現讀入弄錯了&#xff09; #include<cstdio> #include<cstring> #include<algorithm> #include<climits> #include<cmath> #include<cstdlib> #include<ctime> #include<…

java中引用傳遞

基本概念 棧內存 所謂的棧內存就是存儲進程在運行過程中變量的內存空間 堆內存 所謂的堆內存就是存儲系統中數據的內存空間 數組相關的引用傳遞 先來看一段代碼 public class ArrayDemo {public static void main(String[] args) {int[] x null;x new int[3];System.o…

(原創)C++11改進我們的程序之右值引用

http://www.cnblogs.com/qicosmos/p/3369940.html 本次主要講c11中的右值引用&#xff0c;后面還會講到右值引用如何結合std::move優化我們的程序。 c11增加了一個新的類型&#xff0c;稱作右值引用(R-value reference)&#xff0c;標記為T &&&#xff0c;說到右值引用…

(原創)C++11改進我們的程序之move和完美轉發

http://www.cnblogs.com/qicosmos/p/3376241.html 本次要講的是右值引用相關的幾個函數&#xff1a;std::move, std::forward和成員的emplace_back&#xff0c;通過這些函數我們可以避免不必要的拷貝&#xff0c;提高程序性能。move是將對象的狀態或者所有權從一個對象轉移到另…

微型個人博客服務器

Http相關簡介 Http是應用層的基于請求響應的一個協議, 其中Http的請求響應可以分為四部分. 請求行, 請求報頭,空行, 請求正文.其中請求行包括了請求方法, url, 版本號, 請求報頭包括請求屬性, 冒分割的鍵值對, 每組屬性之間都以換行的形式分開, 最后一空行作為請求的結束標識.…

HDU6428-Calculate-數論函數

并不知道為什么同樣一份代碼早上超時下午就A了…好像數據是隨機的? 做的第一道不是簡單板題的數論函數題.果然做不出來… 在網上研究了好久,才算稍微研究明白.看到了兩種推導的思路.(寫了半天發現講起來好麻煩,有時間再來更新) #include<cstdio> #include<cstring&g…

[C/C++]關于C++11中的std::move和std::forward

http://blog.sina.com.cn/s/blog_53b7ddf00101p5t0.htmlstd::move是一個用于提示優化的函數&#xff0c;過去的c98中&#xff0c;由于無法將作為右值的臨時變量從左值當中區別出來&#xff0c;所以程序運行時有大量臨時變量白白的創建后又立刻銷毀&#xff0c;其中又尤其是返回…

BZOJ3930-莫比烏斯反演+杜教篩

題目的意思很簡單&#xff0c;求給定區間內的gcdk的個數&#xff0c;這應該是傳統的莫比烏斯反演了。 有兩種思路&#xff0c;一種是直接將里面變成gcd1&#xff0c;然后里面看作元函數用莫比烏斯函數和恒等函數展開&#xff0c;然后改變求和順序。 還有一種是構造兩個函數&…

HDU1999不可摸數-暴力打表

看到這約數和第一反應是約數和函數&#xff0c;然后仔細一看不是正經的約數和函數&#xff0c;就去推去了&#xff0c;然后推的有點小復雜。&#xff08;數論函數那部分做多了&#xff09; 然后觀察也沒有用到什么數論部分的特殊知識啊&#xff0c;難不成真的要暴力&#xff1f…

BZOJ2818-莫比烏斯反演/歐拉函數

這道題之前沒有看數論函數的時候搞懂了,想到直接用歐拉函數做,現在再來看第一個想法就是這不是莫比烏斯反演嘛. 但還是能用簡單數論知識直接做出來的還是盡量做簡單一點. 兩種方法想到后都寫的差不多對了,都爆long long 了.萬惡的long long .實在是煩.切記切記,只要是乘積,或…

epoll用法整理 實現回聲服務端

http://blog.csdn.net/chenxun_2010/article/details/504934811、epoll是什么&#xff1f; epoll是當前在Linux下開發大規模并發網絡程序的熱門人選&#xff0c;epoll 在Linux2.6內核中正式引入&#xff0c;和select相似&#xff0c;都是I/O多路復用(IO multiplexing)技術。 Li…

HDU3430-擴展中國剩余定理

剛開始一直把題意看錯了。。。體測完智商急劇下降 正確理解題意以后自己寫一直wa&#xff0c;而且并不知道是哪里的問題&#xff0c;在網上看了一下其他人寫的改了改自己的就過了&#xff0c;可是之前的還是不知道為什么不對。 題意大概就是有一個置換群&#xff0c;問運算多…

linux shell編程多線程和wait命令學習

http://blog.csdn.net/shuanghujushi/article/details/38186303最近在使用shell做一些部署工作&#xff0c;在使用過程中&#xff0c;效率一直不高。想提高效率&#xff0c;經過分析發現&#xff0c;并不是所有操作都是需要串行的&#xff0c;一些操作是可以進行并行操作的。經…

#ifndef的作用

#ifndef是一條預編譯指令&#xff0c;就是說實在編譯的時候就會運行的指令。這個指令的作用很簡單&#xff0c;就是字面意思&#xff0c;如果沒有定義的話&#xff0c;但是卻經常使用。 因為使用這個可以避免一個源文件中兩次兩次包含同一個文件&#xff0c;或者一個工程文件中…

C++中結構體和類的區別和聯系

最主要的不同點就是結構體的訪問權限為public而且不能改變&#xff0c;而類的訪問權限可以改變&#xff0c;public的類和結構體基本一樣。 繼承上同樣表現出這樣的特點&#xff0c;struct是public繼承的&#xff0c;而class是private繼承的&#xff0c;繼承的子類的訪問權限取…

poll函數實現多路復用

http://blog.csdn.net/xluren/article/details/8206371 結構體pollfd struct pollfd { int fd; //file descriptor short event; //event of interest on fd short reven; //event that occurred on fd } 每一個pollfd結構體指定了一個被監視的文件描述符&…

抽象類(純虛函數、虛函數)和虛基類(虛繼承)

C多態 C的多態包括靜態多態和動態多態&#xff0c;靜態多態包括函數重載和泛型編程&#xff0c;動態多態包括虛函數。靜態多態實在編譯期間就能確定&#xff0c;動態多態實直在程序運行時才能確定。 抽象類 虛函數 在默認情況下對函數成員調用實施的是靜態連編&#xff0c;…

socket通信之最簡單的socket通信

http://blog.csdn.net/xluren/article/details/8043484#t15 套接字有三種類型 流式套接字&#xff08;SOCK_STREAM&#xff09;&#xff0c;數據報套接字&#xff08;SOCK_DGRAM&#xff09;及原始套接字。 1.流式套接字提供面向連接、可靠的數據傳輸服務&#xff0c;數據按字節…

Java環境配置

自己安裝的時候按照一般的安裝方法先配置了JDK的環境&#xff0c;能夠成功顯示java版本后我在安裝eclipse的時候一直提示錯誤&#xff1a; Unfortunately the Java version needed to run Eclipse Installer couldn’t be found on your system. You need the following versio…