Không tìm thấy phương thức FloatMath.sqrt ()


86

Tôi đang sử dụng Android Marshmallow SDK mới và phương pháp FloatMath.sqrt()này không còn nữa. Tôi nên dùng gì bây giờ?

Câu trả lời:


232

Các tài liệu nói điều này:

Về mặt lịch sử, các phương thức này nhanh hơn các phương thức java.lang.Math dựa trên kép tương đương. Trên các phiên bản Android có JIT, chúng trở nên chậm hơn và từ đó đã được triển khai lại để kết thúc các cuộc gọi tới java.lang.Math. java.lang.Math nên được ưu tiên sử dụng.

Tất cả các phương thức đã bị xóa khỏi API công khai trong phiên bản 23.

@deprecated Sử dụng java.lang.Math để thay thế.

Điều này có nghĩa là giải pháp là sử dụng lớp Toán:

(float)Math.sqrt(...)

1
Ok, nhưng điều gì sẽ xảy ra nếu nó được tham chiếu từ một thư viện và Proguard đang phàn nàn?
manfcas

Tôi đã vá thư viện đó vì tôi có nó như một phần trong dự án của mình. Tuy nhiên, bạn có thể triển khai một trình bao bọc của riêng mình, nơi bạn gọi phương thức hiện có.
rekire
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.