programing

요소를 배열의 시작 부분으로 푸시하는 가장 쉬운 방법은 무엇입니까?

powerit 2023. 5. 13. 11:01
반응형

요소를 배열의 시작 부분으로 푸시하는 가장 쉬운 방법은 무엇입니까?

저는 이것을 할 수 있는 한 줄의 방법을 생각할 수 없습니다.방법이 있습니까?

그 방법을 사용하는 것은 어떻습니까?

ary.unshift(obj, ...) → ary
개체를 자기 앞에 추가하여 다른 요소를 위쪽으로 이동합니다.

사용 중:

a = [ 0, 1, 2]
a.unshift('x')
# => ["x", 0, 1, 2]
a.inspect
# => "["x", 0, 1, 2]"

사용할 수 있습니다.insert:

a = [1,2,3]
a.insert(0,'x')
=> ['x',1,2,3]

여기서 첫 번째 인수는 삽입할 인덱스이고 두 번째 인수는 값입니다.

array = ["foo"]
array.unshift "bar"
array
=> ["bar", "foo"]

경고해 주세요, 파괴적입니다!

Ruby 2.5.0 이후 Array는prepend메소드(이것은 단지 에일리어스일 뿐입니다.unshift방법)을 선택합니다.

어레이 연결을 사용할 수도 있습니다.

a = [2, 3]
[1] + a
=> [1, 2, 3]

이렇게 하면 새 배열이 생성되고 원본은 수정되지 않습니다.

사용할 수 있습니다.methodsolverRuby 함수를 찾습니다.

여기 작은 대본이 있습니다.

require 'methodsolver'

solve { a = [1,2,3]; a.____(0) == [0,1,2,3] }

이 인쇄 실행

Found 1 methods
- Array#unshift

다음을 사용하여 메서드 해결사를 설치할 수 있습니다.

gem install methodsolver

다음의 조합을 사용할 수 있습니다.prepend그리고.delete관용적이고 의도적으로 드러나는 것들:

array.delete(value)  # Remove the value from the array  
array.prepend(value) # Add the value to the beginning of the array

또는 한 줄로:

array.prepend(array.delete(value))

언급URL : https://stackoverflow.com/questions/6085518/what-is-the-easiest-way-to-push-an-element-to-the-beginning-of-the-array

반응형