在程式語言中,有一個非常核心的概念「變量」。雖然變量中保存的數據可以發生變化,但還是存在著一定的局限性。
比如:當要保存一個班多個學員的成績。雖然使用變量可以實現,但操作起來非常繁瑣,特別是當學生的人數越來越多的時候。
有沒有一種更大的容器,可以一次性存儲多個數據,而且只需要一個變量名就可以解決問題?
01數組概述
1、概念
沒錯,這個變量就是數組。下一個嚴謹的定義就是:一組類型相同的有序的數據集合。從定義中可以挖掘出數組兩大的特點:
類型相同。在C語言中,數組元素的類型必須保持一致。有序。數組元素之間是彼此挨在一起的,類似火車車廂,一節節連在一起。
2、集合(擴展內容)
集合與數組很像,但又是兩個不同的東西。數組聲明時必須確定長度,而且一旦申請成功,其長度(大小)不可更改。
而集合類似於動態數組,其長度(大小)可以自動伸縮(像氣球一樣,可大可小),但集合中的元素類型可以不同。
說明:C語言中沒有集合,在Java、C#等程式語言中存在集合的應用。
3、相關術語(類比班級)
數組名: 類似於班級名稱。表示不同於其他班級,如:高二(一)班。
數組元素:類似於班級的每一位學員。在現實生活中,每一位學員其實都是有姓名的;而在數組中的元素單個是沒有名稱的,只有一個統一的數組名。
數組長度(或大小):類似於班級的總人數。如:該班級50名學員,則數組長度(或大小)即為50。
索引下標:數組元素既然沒有名稱,如何獲取某個特定的數組元素呢?