當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Ruby Array.slice()用法及代碼示例


Array.slice() 方法

在本文中,我們將研究 Array.slice() 方法。你們一定認為該方法必須做一些與切片 Array 實例中的元素或對象相關的事情。它並不像看起來那麽簡單。好吧,我們將在其餘內容中解決這個問題。我們將嘗試借助語法和演示程序代碼來理解它。

方法說明:

此方法是一個公共實例方法,是為 Ruby 庫中的 Array 類定義的。此方法適用於元素引用,並返回與方法調用一起傳遞的索引處的元素。如果您使用該方法傳遞兩個參數,並且這些參數是開始和長度,則該方法將返回一個子數組,該子數組將包含從開始索引到長度索引的元素。如果在方法調用時將範圍作為參數傳遞,則此方法將返回子數組。該方法是非破壞性方法的示例之一,該方法不會給 self Array 中對象的實際排列帶來任何變化。

用法:

    array_instance.slice(index) -> object or nil
    or
    array_instance.slice(start,length)-> new_array or nil
    or
    array_instance.slice(range)-> new_array or nil

所需參數:

您可以在方法調用時提供單個索引或範圍或開始和長度作為此方法內的參數。您將根據在方法內部傳遞的參數獲得輸出。

範例1:

=begin
  Ruby program to demonstrate slice method
=end

# array declaration
table = [2,4,6,8,10,12,14,16,18,20]

puts "Array slice implementation"

puts "Enter the index you want to slice"
ind = gets.chomp.to_i

if(table.slice(ind))
	puts "The element which is sliced is #{table.slice(ind)}"
else
	puts "Array index out of bound"
end

puts "Array instance after slicing:#{table}"

輸出

Array slice implementation
Enter the index you want to slice
 4
The element which is sliced is 10
Array instance after slicing:[2, 4, 6, 8, 10, 12, 14, 16, 18, 20]

說明:

在上麵的代碼中,您可以觀察到我們在 Array.slice() 方法的幫助下從 Array 實例中切片元素。我們在索引的幫助下對其進行切片,我們已要求用戶為其輸入值。已從 Array 實例中切出第 4 個索引對象。由於該方法是非破壞性方法的示例之一,因此該方法不會給 self Array 帶來變化。

範例2:

=begin
  Ruby program to demonstrate slice method
=end

# array declaration
table = [2,4,6,8,10,12,14,16,18,20]

puts "Array slice implementation"

puts "Enter the start index you want to slice"
ind = gets.chomp.to_i

puts "Enter the length"
len = gets.chomp.to_i

if(table.slice(ind,len))
	puts "The sub array which is sliced is #{table.slice(ind,len)}"
else
	puts "Array index out of bound"
end

puts "Array instance after slicing:#{table}"

輸出

Array slice implementation
Enter the start index you want to slice
 3
Enter the length
 5
The sub array which is sliced is [8, 10, 12, 14, 16]
Array instance after slicing:[2, 4, 6, 8, 10, 12, 14, 16, 18, 20]

說明:

在上麵的代碼中,您可以觀察到我們在 Array.slice() 方法的幫助下從 Array 實例的元素創建了一個子數組。我們在兩個參數的幫助下對其進行切片,即我們要求用戶輸入值的起始索引和長度。在輸出中,您可以看到 Array 實例已從 3rd index 和 7th索引導致形成一個包含五個對象的數組。由於該方法是非破壞性方法的示例之一,因此該方法不會給 self Array 帶來變化。



相關用法


注:本文由純淨天空篩選整理自 Array.slice() Method with Example in Ruby。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。