답변
대부분의 C 계열 언어와 마찬가지로, 하나도 없습니다.
하나가 아니지만 pow
기능이 있습니다.
이 운영자가 아니지만이 같은 펑 기능을 사용할 수 있습니다 :
return pow(num, power)
당신은, 당신은 또한 운영자 호출과 같이 펑 기능을 만들 수있는하려면 :
infix operator ** { associativity left precedence 170 }
func ** (num: Double, power: Double) -> Double{
return pow(num, power)
}
2.0**2.0 //4.0
을
내가 해냈어과 같이 :
operator infix ** { associativity left precedence 200 }
func ** (base: Double, power: Double) -> Double {
return exp(log(base) * power)
}
일부 전원에 2를 제기 할 일이 있다면, 당신은 비트 왼쪽 시프트 연산자를 사용할 수 :
let x = 2 << 0 // 2
let y = 2 << 1 // 4
let z = 2 << 7 // 256
'power'값이 1보다 적을 수 있습니다.
이 값은 pow(2.0, 8.0)
보다 빠르며 두 배 사용을 피할 수 있습니다. **
중위 연산자의 스위프트 3 버전을 찾고있는 사람들을위한
이것은 가능한 한 훌륭하지만 질문에 실제로 대답하지 않습니다. – Chris
나는 2의 힘에 관심이 있었기 때문에 그것은 나를 위해 대답했다. – dldnh
@chanceoperation 또는 2의 n 승을 위해 1 또는 0b00000001을 n 개의 자리로 왼쪽으로 이동할 수 있습니다. [Swift Advanced Operators] (https://developer.apple.com/library/ios/documentation/Swift/Conceptual /Swift_Programming_Language/AdvancedOperators.html) '하게 X = 0b00000001 지수 << // 2 ** 지수 하자 X = 1 << // 0 1 X = 1 << 2 // 4 가합시다 X = 1 << 8 // 256' – beepscore
: 당신의 int에 그것을 사용하고 XOR과 충돌 할 수 **`, 그래서
precedencegroup ExponentiationPrecedence {
associativity: right
higherThan: MultiplicationPrecedence
}
infix operator ** : ExponentiationPrecedence
func ** (_ base: Double, _ exp: Double) -> Double {
return pow(base, exp)
}
func ** (_ base: Float, _ exp: Float) -> Float {
return pow(base, exp)
}
2.0 ** 3.0 ** 2.0 // 512
(2.0 ** 3.0) ** 2.0 // 64
니스. 'pow '을 얻기 위해'다윈'을 가져 오는 것을 잊지 마세요. – iainH
확실히 결합 성을 남겨 두어야합니다. 2^3^2는 512가 아니라 64입니다. – brandonscript
- 1. Swift의 ID 연산자
- 2. 모듈러 지수화
- 3. 지수화 1보다
- 4. BigDecimal 지수화
- 5. 벡터화 된 지수화
- 6. 지수화 기능 인텔 어셈블리
- 7. C++의 모듈러 지수화
- 8. 부정적인 실수의 지수화
- 9. 덜 복잡한 방식으로 지수화
- 10. 프롤로그에서 꼬리 재귀 지수화
- 11. Maple의 빠른 모듈러 지수화
- 12. 지수 화 루프를 사용하여 지수화
- 13. 전원 기능이없는 부동 소수점 지수화
- 14. C# 및 복소수의 이상한 지수화
- 15. 시간 복잡도 제곱에 의한 지수화
- 16. Swift의 enumerateSubstringsInRange
- 17. Swift의 TimeInterval
- 18. Swift의 UISearchDisplayController
- 19. Swift의 약어
- 20. Swift의 CGImageRelease
- 21. Swift의 TableViewCell?
- 22. Ruby의 지수화 1.8.7 잘못된 대답을 반환합니다
- 23. 자바 스크립트에서 가장 빠른 모듈러 지수화
- 24. NTL 라이브러리의 다항식, RR 및 ZZ의 지수화
- 25. 큰 부동 소수 허수 인수의 지수화
- 26. 지수의 이진 표현을 사용하는 모듈러 지수화
- 27. 제곱에 의한 지수화 (곱셈의 수를 얻음)
- 28. 타이밍 연산자 +, 연산자 -, 연산자 * 및 연산자/
- 29. iOS 8 + Swift의 setHTTPBody
- 30. Swift의 일반 사전
더 나은는'사용하기. – Kevin
^연산자는 Swift에서 XOR로 정의됩니다. –
경고! 여기에 문제가 있습니다. 예를 들어, 보통 프로그래밍 언어에서는'-2.0 ** 2.0 = - (2.0 ** 2.0) = -4.0'입니다. 그러나, 여기'-2.0 ** 2.0 = (-2.0) ** 2.0 = 4.0'이 의도 된 용도가 아니며 버그를 추적하기 힘들고 어렵게 만들 수 있습니다. –