1
x
의 정수를 지정합니다. 일부 범위의 경계 내에있는 경우 x
을 반환하고 싶습니다. 그렇지 않은 경우 위반하는 경계의 값을 반환합니다.Scala 범위 내의 클립 번호
def keepWithinRange(x:Int, min:Int, max:Int) : Int = {
if (x < min) return min;
if (x > max) return max;
return x;
}
더 세련된 방법이 있습니까?
이 내가'RichInt' 방법을 사용하여 중위 연산자 표기법은 가독성을하는 데 도움이 생각 (하지 않는 한 사건이 부부의 작성 비용 래퍼 객체). –
@Travis'a max b '는 적어도 내 컴퓨터에서'math.max (a, b)'와 정확히 같은 실행 시간을가집니다. 컴파일러인지 런타임 최적화인지 확실하지 않습니다. –
@ 루이지 : 2.10을 사용하고 있습니까? – Arjan