Dizimden bir değere (yalnızca bir) elemanı kaldırmak istiyorum.ruby Diziden bir öğeyi kaldırın
örnek:
x = [1,2,3,2]
x.remove(2)
result: x= [1,3]
Ama ben [1,3,2]
almak istiyorum.
sayesinde
Dizimden bir değere (yalnızca bir) elemanı kaldırmak istiyorum.ruby Diziden bir öğeyi kaldırın
örnek:
x = [1,2,3,2]
x.remove(2)
result: x= [1,3]
Ama ben [1,3,2]
almak istiyorum.
sayesinde
(delete_at
sadece indeksi sağlayan önce de belirtildiği gibi, ya) x.slice!(x.index(2), 1)
: Sen sadece yapmak zorunda Senin durumunda index(element)
kullanarak silmek istediğiniz öğenin 1 indeksini alabilirsiniz yorum olarak bahsedilen, önce bir oluşumu
x.delete_at(x.index 2)
> x = [1,2,3,2]
=> [1, 2, 3, 2]
> x.delete_at(x.index 2)
=> 2
> x
=> [1, 3, 2]
sen ebil istemek silmek için x.delete_at
kullanabilirsiniz Bunun cevabım here tanımladığınız olarak Array#difference
olduğu
x = [1,2,3,2]
x.difference([2])
#=> [1, 3, 2]
yazma d. Yöntemin geniş potansiyel uygulaması nedeniyle proposed Ben Ruby çekirdeğine eklenir.
x = [1,2,3,2,1,2,4,2]
varsayalım
ve ilk 1
, ilk iki 2
's ve 4
kaldırmak istedi.
x.difference([1,2,2,4,4,5])
#=> [3, 1, 2, 2]
aynı sonucu verir sen
x.difference([1,2,2,4])
#=> [3, 1, 2, 2]
Not yazardı Bunu yapmak için.
son1
,
son iki
2
s kaldırmak için ve ve u belirli sayıda veya dizinin ilk numarasını kaldırmak için 1` istiyorsun `çağırdığınızda
4
,
x.reverse.difference([1,2,2,4]).reverse
#=> [1, 2, 3, 2]
yazma? – 7urkm3n
belirli bir sayı – ayoubben
'.delete_at (dizi dizini)' için kullanabilirsiniz, ya da bunu yapmak için [1,2,3,4,1] 'den [,, 3,4] '. sadece x.uniq'i ara. – 7urkm3n