日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【Groovy】集合声明与访问 ( 使用 [] 创建 ArrayList 和 LinkedList 集合 | 集合赋初值 | 使用下标访问集合 | 使用 IntRange 作为下标访问集合 )

發布時間:2025/6/17 编程问答 26 豆豆

文章目錄

  • 一、使用 [] 創建集合
    • 1、使用 [] 創建 ArrayList 集合
    • 2、使用 [] 創建 LinkedList 集合
  • 二、訪問集合中的元素
    • 1、集合賦初值
    • 2、使用下標訪問集合元素
      • ( 1 ) 正常下標
      • ( 2 ) 負數下標
      • ( 3 ) 正數下標但超出范圍
    • 3、使用 IntRange 作為下標訪問集合
    • 4、修改使用 IntRange 作為下標訪問集合不影響原集合的元素值
  • 三、完整代碼示例





一、使用 [] 創建集合




1、使用 [] 創建 ArrayList 集合


[] 賦值給變量 , 默認就是創建 ArrayList 集合 ; 在下面的代碼中 , 打印 [] 變量類型 ;

其結果是 class java.util.ArrayList ;

// 使用 [] 為變量賦值// 該變量默認為 ArrayList 類型def list = []// 打印 [] 變量類型println list.class

2、使用 [] 創建 LinkedList 集合


如果要創建 LinkedList 集合 , 可以在變量的賦值后面添加 as LinkedList , 就可以將該變量聲明為 LinkedList 集合 ;

其執行結果為 class java.util.LinkedList ;

// 創建 LinkedListdef list1 = [] as LinkedList// 打印 list1 變量類型println list1.class



二、訪問集合中的元素




1、集合賦初值


[] 中 , 可以設置多個相同類型的元素 , 各個元素之間使用逗號隔開 ;

下面的代碼相當于創建了 ArrayList<String> 集合 , 并為該集合賦值 333 個元素 , 分別是 “1”, “2”, “3” ;

def list2 = ["1", "2", "3"]

2、使用下標訪問集合元素



( 1 ) 正常下標


使用 [0] , [1] 合法的正常下標 , 可以訪問集合中的元素 , 該用法與 Kotlin 類似 ;

def list2 = ["1", "2", "3"]// 通過下標訪問集合元素print list2[0] + " "print list2[1] + " "print list2[2] + " "

打印結果為

1 2 3

( 2 ) 負數下標


如果 下標為負數 , 如 -1 , 則相當于訪問倒數第一個取值 , 即訪問 list.size() - 1 下標取值 , 下面的兩種用法是等效的 ;

// 為 ArrayList 設置初始值def list2 = ["1", "2", "3"]// 訪問集合的 -1 元素下標// 相當于倒過來取值 , 倒數第一個取值println list2[-1] + " "// 該用法等價于 -1 下標取值println list2[list2.size() - 1] + " "

打印結果為 :

3 3

( 3 ) 正數下標但超出范圍


如果 ArrayList 取值的下標是正數 , 但是超過了范圍 , 則獲取的值為 null ;

// 為 ArrayList 設置初始值def list2 = ["1", "2", "3"]// 如果下標超出了 , 獲取的值為 nullprintln list2[4] + " "

3、使用 IntRange 作為下標訪問集合


IntRange 實例對象 也可以作為 集合的訪問下標 , 獲取的是一個 新的子集合 ;

// 為 ArrayList 設置初始值def list2 = ["1", "2", "3"]// 取其中的某個范圍的值println list2[0..1] + ""println list2[1..2] + ""

打印結果 :

[1, 2, ] [2, 3, ]

4、修改使用 IntRange 作為下標訪問集合不影響原集合的元素值


修改使用 IntRange 作為下標訪問集合 不影響原集合的元素值 , 原來集合中的元素的值不變 , 這說明獲取的集合是 新創建的一個集合 ;

// 為 ArrayList 設置初始值def list2 = ["1", "2", "3"]// 取出的值組成的是一個新的集合// 修改新集合中的數據 , 不會對老集合產生影響def list3 = list2[0..2]list3[0] = "8"println list2println list3

執行結果 :

[1, 2, 3] [8, 2, 3]



三、完整代碼示例



完整代碼示例 :

class Test {static void main(args) {// I . 創建 ArrayList 集合// 使用 [] 為變量賦值// 該變量默認為 ArrayList 類型def list = []// 打印 [] 變量類型println list.class// II . 創建 LinkedList 集合// 創建 LinkedListdef list1 = [] as LinkedList// 打印 list1 變量類型println list1.class// III . 創建 ArrayList 為集合元素賦值 , 使用下標訪問集合元素// 為 ArrayList 設置初始值def list2 = ["1", "2", "3"]// 通過下標訪問集合元素print list2[0] + " "print list2[1] + " "print list2[2] + " "println ""// 訪問集合的 -1 元素下標// 相當于倒過來取值 , 倒數第一個取值println list2[-1] + " "// 該用法等價于 -1 下標取值println list2[list2.size() - 1] + " "// 如果下標超出了 , 獲取的值為 nullprintln list2[4] + " "// 取其中的某個范圍的值println list2[0..1] + ""println list2[1..2] + ""// 取出的值組成的是一個新的集合// 修改新集合中的數據 , 不會對老集合產生影響def list3 = list2[0..2]list3[0] = "8"println list2println list3} }

執行結果 :

class java.util.ArrayList class java.util.LinkedList 1 2 3 3 3 null [1, 2, ] [2, 3, ] [1, 2, 3] [8, 2, 3]

總結

以上是生活随笔為你收集整理的【Groovy】集合声明与访问 ( 使用 [] 创建 ArrayList 和 LinkedList 集合 | 集合赋初值 | 使用下标访问集合 | 使用 IntRange 作为下标访问集合 )的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。