Ruby의 결합 된 비교 연산자 또는 우주선 연산자가 정렬에 사용됩니다. 이 연산자를 sort
함수와 함께 사용 했으므로이 연산자의 메커니즘을 이해할 수 없습니다. 이 연산자의 다른 용도가 있습니까?루비 결합 비교 연산자/우주선 연산자를 소트 이외의 용도로 사용합니까?
0
A
답변
5
기본적으로 두 값이 한 연산자에서 모두보다 크거나 작거나 같은지 묻습니다. 메소드를 사용하여 증가, 감소 또는 아무 것도하지 않도록 값을 리턴 할 수 있습니다.
1 <=> 3 returns -1
3 <=> 1 returns 1
3 <=> 3 returns 0
당신은 당신이 이길 게임을 한 지점을 수여 점수 유지 방법이 있다면 예를 들어
, 마이너스 잃을 게임, 또는 넥타이에 대한 변화없이 1 점 ...
def score(player_1, player_2, current_score)
current_score + player_1 <=> player_2
end
그럼
score(1,2,0)
#=> -1
score(1,3,-1)
#=> -2
score(3,2,-2)
#=> -1
score(3,0,-1)
#=> 0
score(4,0,0)
#=> 1
score(3,0,1)
#=> 2
score(3,3,2)
#=> 2
0
은 우주선 연산자는 Comparable module 필요하다. 기본적으로 클래스의 include Comparable
이 클래스에 <=>
메소드를 정의하고>, < =, <,> =, == 및 사이? 메소드는 해당 클래스에 대해 자동으로 정의됩니다.
관련 문제
- 1. MaxJSONlength는 어떤 용도로 사용합니까?
- 2. 레이즈가있는 예외는 어떤 용도로 사용합니까?
- 3. 재귀 배열은 어떤 용도로 사용합니까?
- 4. 왜 비트 연산자를 사용합니까?
- 5. Groovy의 비교 연산자를 재정의하십시오.
- 6. ? 와 : 비교 연산자를 {와}
- 7. 비교 루비
- 8. JSF는 List 또는 Array를 내부 용도로 사용합니까?
- 9. @section 스크립트 란 무엇이며 어떤 용도로 사용합니까?
- 10. CSS lone * 선택기는 어떤 용도로 사용합니까?
- 11. 스텁을 어떻게 호출하지만 프로덕션 용도로 사용합니까?
- 12. 파이썬에서 @ (at) 연산자를 어떻게 사용합니까?
- 13. 비교 연산자를 사용하여 튜플에서 일치
- 14. 루비 비교 날짜
- 15. 루비 2D 배열 비교
- 16. 루비 데이터 비교
- 17. 루비 2 해시 비교
- 18. 머지 소트
- 19. 이 루비 퀵 소트 구현에서 최종 배열은 어떻게 구성됩니까?
- 20. PHP의 소트 비교 함수가 클래스 멤버 변수에 대한 액세스 필요 -
- 21. Google 이외의 API 용도로 google-api-java-client 사용
- 22. 도메인 간 HTTP 요청 이외의 용도로 JSONP를 사용해야합니까?
- 23. 성능 이외의 용도로 파이썬 응용 프로그램을 사용하는 목적이 있습니까?
- 24. 오프라인 응용 프로그램 이외의 용도로 데이터베이스 저장소 사용
- 25. iOS .strings 파일을 현지화 이외의 용도로 사용할 수 있습니까?
- 26. git 서브 모듈 이름이 표시 이외의 용도로 사용됩니까?
- 27. Emacs에서 루비 디버그는 어떻게 사용합니까?
- 28. 루비 문자열 비교 : ==를 === 대
- 29. 루비 임의의 문자열 비교 방법
- 30. 루비 - 두 숫자와 연산자를 평가하는 방법? 루비에서
기술적으로 연산자는 아니지만 사용자가 정의하는 방법입니다. "다른 모든 용도"는 사용자가 상상하고 디자인 할 수있는 범위를 의미합니다. 질문에 대한 답변은 "예"입니다. – vgoff