당신이 배열에 값을 부여하고 그들의 인덱스를 가져올 여부를 제가 질문에서 말할 수
, 혹은 그 반대로도. 그러므로 나는 각 작업마다 하나의 방법을 제안 할 것이다. 나는 예는이 배열을 사용합니다 :
arr = [1, 2, 3, 4, 5, 6, 7, 8]
값을 지수
로이 값을 제공하는 경우 :이 같은 숫자 인덱스 쌍을 검색 할 수 있습니다
vals = [4, 6]
:
를
vals.map { |num| [num, arr.index(num)] }
#=> [[4, 3], [6, 5]]
또는 직접 인쇄 :
vals.each { |num| puts "#{num}, #{arr.index(num)}" }
# 4, 3
# 6, 5
#=> [4, 6]
vals
의 요소가 존재하지 arr
의 경우 : 값에
vals = [4, 99]
vals.map { |num| [num, arr.index(num)] }
#=> [[4, 3], [99, nil]]
지수
당신이 주어지면 지수 :
indices = [3, 5]
당신이 검색 할 수 있습니다 t와 같은 인덱스 - 값 쌍 그의 :
indices.zip(arr.values_at(*indices))
#=> [[3, 4], [5, 6]]
그런 다음 원하는 형식으로 인쇄하십시오.
이 범위를 벗어난, nil
가 반환됩니다 인덱스가되어있는 경우 :
indices.zip(arr.values_at(*[3, 99]))
#=> [[3, 4], [5, nil]]
귀하의 코드가 잘못되었습니다. – sawa