Swift程式獲取陣列中最後指定數量的元素


在本文中,我們將學習如何編寫一個Swift程式來獲取陣列中最後指定數量的元素。

陣列用於按順序儲存相同資料型別的元素。因此,這裡我們使用以下方法來獲取陣列中最後指定數量的元素:

  • 使用使用者自定義函式

  • 使用suffix(_:)函式

  • 使用suffix(from:)函式

方法 1:使用使用者自定義函式

為了從陣列中獲取最後指定數量的元素,我們可以建立一個函式。此函式將返回一個包含最後指定數量元素的陣列。

演算法

  • 步驟 1 - 建立一個函式。

  • 步驟 2 - 計算起始索引。

  • 步驟 3 - 計算結束索引。

  • 步驟 4 - 返回一個包含陣列最後幾個元素的結果陣列。

  • 步驟 5 - 建立一個數組。

  • 步驟 6 - 呼叫上述函式並傳遞陣列和我們想要的元素數量。

  • 步驟 7 - 列印輸出。

示例

以下Swift程式用於獲取陣列中最後指定數量的元素。

import Foundation
import Glibc

// Function to return the last elements from the array
func lastArrayElements(from arr: [Int], ItemNumber: Int) -> [Int]
{
   let startIndex = max(arr.count - ItemNumber, 0)
   let endIndex = arr.count
   return Array(arr[startIndex..<endIndex])
}

// Original array
let arr = [10, 56, 30, 23, 98, 40, 56, 29]
print("Original Array:", arr)
let resArray = lastArrayElements(from: arr, ItemNumber: 4)
print("Modified Array:", resArray)

輸出

Original Array: [10, 56, 30, 23, 98, 40, 56, 29]
Modified Array: [98, 40, 56, 29]

在上面的程式碼中,我們有一個整數型別的陣列。現在我們建立一個名為lastArrayElements()的使用者自定義函式來獲取陣列中的最後 4 個元素。在這個函式中,我們使用max()函式來確保如果請求的元素數量大於陣列的長度。然後我們透過從計算出的startIndex到陣列末尾切片原始陣列來建立一個新陣列。

方法 2:使用suffix(_:)函式

我們還可以使用suffix()函式來獲取陣列中最後指定數量的元素。此函式將返回一個包含指定集合最後幾個元素的陣列,該陣列最多包含指定的最大長度。

語法

func suffix(_y: Int)

這裡,y是要返回的最大元素數量,並且y的值必須大於或等於0。

演算法

步驟 1 - 建立一個包含值的陣列。

步驟 2 - 列印原始陣列。

步驟 3 - 使用suffix()函式獲取陣列末尾的元素。

let result1 = myArray.suffix(3)

步驟 4 - 列印修改後的陣列。

示例

以下Swift程式用於獲取陣列中最後指定數量的元素。

import Foundation
import Glibc

// Creating an array of string type
var myArray = ["Cow", "Dog", "Cat", "Bee", "Owl", "Hen"]
print("Original Array:", myArray)

// Getting last 3 elements from the array
let result1 = myArray.suffix(3)
print("Modified array 1: ", result1)

// Getting last 4 elements from the array
let result2 = myArray.suffix(4)
print("Modified array 2: ", result2)

輸出

Original Array: ["Cow", "Dog", "Cat", "Bee", "Owl", "Hen"]
Modified array 1: ["Bee", "Owl", "Hen"]
Modified array 2: ["Cat", "Bee", "Owl", "Hen"]

在上面的程式碼中,我們有一個字串型別的陣列。現在我們使用suffix()函式獲取給定陣列中的最後 3 個元素並顯示輸出。

方法 3:使用suffix(from:)函式

我們還可以使用suffix(from:)函式來獲取陣列中最後指定數量的元素。此函式將返回從指定位置到給定陣列末尾的陣列。

語法

func suffix(from y: Self.Index)-> Self.SubSequence

這裡,y是我們向結果陣列中新增元素的索引。y的值必須是陣列的有效索引。

演算法

步驟 1 - 建立一個包含值的陣列。

步驟 2 - 列印原始陣列。

步驟 3 - 使用suffix(from:)函式獲取陣列末尾的元素。

let result1 = myArray.suffix(from:4)

步驟 4 - 列印修改後的陣列。

示例

以下Swift程式用於獲取陣列中最後指定數量的元素。

import Foundation
import Glibc

// Creating an array of string type
var myArray = ["Cow", "Dog", "Cat", "Bee", "Owl", "Hen"]
print("Original Array:", myArray)

// Getting last 2 elements from the array
let result1 = myArray.suffix(from:4)
print("Modified array 1: ", result1)

// Getting last 4 elements from the array
let result2 = myArray.suffix(from: 2)
print("Modified array 2: ", result2)

輸出

Original Array: ["Cow", "Dog", "Cat", "Bee", "Owl", "Hen"]
Modified array 1: ["Owl", "Hen"]
Modified array 2: ["Cat", "Bee", "Owl", "Hen"]

在上面的程式碼中,我們有一個字串型別的陣列。現在我們使用suffix(from: 4)函式獲取給定陣列中的最後 2 個元素並顯示輸出。這裡,此suffix(from: 4)函式顯示從索引 4 到陣列末尾的元素。

結論

因此,這就是我們如何使用以下任何方法從陣列中獲取最後指定數量的元素。這些方法將結果返回到新陣列中,它們不會修改原始陣列。

更新於: 2023年1月27日

132 次瀏覽

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.