【scratch】class_4_數據結構_數組和列表

數據結構 Data Structure

概念:數據結構是計算機存儲、組織數據的方式

就好像現實生活中存儲物品的箱子或者櫃子。各種各樣的數據結構,用以方便實現各種數據的存取。下面先來學習兩個最基本的數據結構,數組和列表

數組 Array

概念:將相同類型的多個數據,按無順序的形式組織在一起形成的集合。

就好像有多個格子的櫃子,可以用來存放物品,數組就是用來存放數據的“櫃子”;
數組基本概念

要素:數組有三個要素——長度、類型、索引

  1. 一個數組的長度在創建時就確定了,而且是不可以變化的。就好像我們拜託木匠給我們做一個櫃子,這個櫃子裏有幾個格子在做的時候就已經確定了,是不可以變化的。
  2. 和現實中的櫃子不同的是,現實中的櫃子可以裝任何東西——只要能裝的進去。但是數組能存放的數據類型一開始也是確定的,不能改變。就好像我們做一個櫃子,只能裝鞋子,或者只能裝褲子。一個數組被創建時,必須聲明它要存儲的數據類型,要麼只能裝數字,要麼只能裝字符,等等。
  3. 索引就是櫃子裏邊格子的編號,它代表了數據的位置。通過給格子編號,可以很方便的知道哪個格子裏裝的是什麼東西,也能很方便的把編號對應的數據取出來,就好像超市的儲物櫃,或者澡堂放衣服的櫃子。數組的要素

列表 List

列表有很多種,這裏我們先介紹最簡單的一種,ArrayList數組列表,又叫動態數組
它和上面介紹的數組幾乎是一樣的。最大的不同點是,它的長度是可變的,也就是說,可以隨時在列表中添加新的數據。而且列表具有的操作方法可以很方便的幫助我們操作數據,這些方法是數組不具有的。

具體實現

在scratch工具,有列表的實現方式。
scratch中的列表
點擊‘建立一個列表’,輸入列表名稱,就可以建立一個列表
建立列表後,在變量的下方出現許多操作列表的方法
建立列表
命令詳解:

  • 將數據放入列表
    add
  • 刪除第幾項,點擊後可以把對應項目刪除。比如我們把第3項C刪除
    delete
  • 刪除所有項,可以用於清空列表
    deleteAll
  • 在第幾項前插入,比如在第2項前插入‘天’字,第2項就變成了‘天’,後面的項依次往後排替換
  • 將第幾項替換爲,比如把第3項‘B’替換爲‘人’
    替換項
  • 返回列表第幾項,這裏我們要用‘說話’功能查看輸出效果,我們讓小貓說第3項‘人’
    第幾項
  • 列表中第一個某數據的編號,當列表中出現相同的數據時,這個命令返回該數據第一次出現的位置。比如列表中有3個C,我們返回第1個C的位置是4
    firstIndexOf
  • 列表的項目數,可以看到現在有6項
    length
  • 判斷列表中是否包含某個數據,比如判斷列表中是否包含‘人’這個字
    contains
    如果判斷一個列表中沒有的數據,他就會輸出‘列表中不包含’這個數據
    notContains
  • 判斷列表中是否包含某個元素也可以用上面的‘列表中第一個某數據的編號這個命令’,如果列表中包含這個數據,就會返回該數據的索引,且這個索引一定是大於0的;如果列表不包含這個數據,就會返回0。所以可以看返回結果是否大於0來判斷該列表是否包含這個數據
    包含‘人’的情況
    contains2
    不包含‘地’的情況
    notContains

列表的遍歷

遍歷就是依次訪問列表中的所有元素
遍歷通常都要用到循環
假設列表中有從99到90十個數字,要快速訪問這些數字,就要用到下面的方法
遍歷列表的方法
效果如下
遍歷列表

數組與列表使用是編程中的最基本的操作,之後我們還會學到各種各樣的數據結構的使用方法,在那之前先要打好基礎

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章