LONGEPASS
Q103.

一Java 程式片段如下,執行後下列何者為其輸出?電腦軟體設計(JAVA) 乙級 Java 第 103 題 題目 圖片

電腦軟體設計(JAVA) · 乙級 · Java · Q103

難易度分析

3 / 5

本題考查對 Java 集合框架中特定方法回傳值與索引定義的理解,且選項中包含容易混淆的子列表範圍概念,需精確區分方法執行後的最終輸出類型。

正確答案:③true

③ true:程式碼中 `list.contains("C")` 會檢查原始 list 是否包含元素 "C",由於 list 包含 `[A, B, C, D]`,因此 `contains` 回傳 true,此為正確輸出。

錯誤選項解析

  • ① [A, B]:ArrayList 的 `subList(0, 2)` 會擷取索引 0 到 1 的元素,回傳 `[A, B]`,但程式碼後續呼叫 `contains("C")` 是針對原始 list 操作,並非輸出 subList 結果。
  • ② [A, B, C, D]:ArrayList 的 `subList` 方法第二個參數為 exclusive 上限,`subList(0, 2)` 僅包含索引 0 和 1,不會包含索引 2 的元素 C。
  • ④ false:contains 方法在元素存在時回傳 true,只有當元素不存在於 list 中才會回傳 false。
Learning Tip

"此題考 ArrayList 的 `contains()` 與 `subList()` 方法。`contains()` 檢查元素是否存在並回傳 boolean,而 `subList(start, end)` 的 end 為 exclusive(不包含)。常考陷阱為混淆 `subList` 的索引範圍,以及誤以為程式會輸出 subList 而非 contains 的回傳值。"

學員答題分佈

①[A, B]0%
②[A, B, C, D]0%
③true0%
④false0%

此答題分佈是根據學員在 LongePass 模擬考等實際作答紀錄計算而成。與考友分享這道歷屆試題與詳細解析!

相似類型題目