2012-10-29 2 views
1

두 개의 Ruby 버전은 1.8.7 (학교에서 사용)과 1.9.3 (현재 시스템에있는 현재 버전)입니다.목록의 요소 비교에서 Ruby 1.8과 1.9의 차이점

1.9.3에서 무엇이 다른지 궁금해서 다음을 올바르게 작동시키지 않게하십시오. 이 함수는 목록의 모든 요소가 동일하면 true을 출력하고, 모두 같지 않으면 false을 출력합니다. 루비 1.9.4에서

e.g. 
[1,1,1] => true 
[1,2,1] => false 

,
odd_one_out_in_list?([1,1,1]) 
=> false #which is should output 'true' 

다음의 논리가 나에게 좋아 보이는
odd_one_out_in_list?([1,1,1]) 
=> true #which is good 

루비 1.8.7,

에있는 동안. 1.9.4와 다른 점은 무엇입니까? 나는 체크 아웃했다 : What is the difference between Ruby 1.8 and Ruby 1.9 그러나 거기에서 대답을 찾을 수 없다. 여기에

내 함수의 :

def odd_one_out_in_list?(list) 
    sorted_list = list.sort 
    if sorted_list[0] == sorted_list[list.length-1] 
    return true 
    else 
    return false 
    end 
end 
+2

루비 1.9.4가 없습니다. –

+4

또한 이걸 재현 할 수 없습니다. 1.8.7 및 1.9.3 제공된 입력에 대해 동일한 결과를 제공하십시오. –

+0

왜 비교 결과를 반환하지 않는 것이 좋을까요? –

답변

0

이 odd_one_out_in_list 데프보십시오 (리스트); list.uniq.size == 1; 종료. 더 간단하고 아마 빠릅니다.