この FloatMath クラスが API23 から消えてしまいました。正確に言うと、クラス自体は残っていますが、中身は空っぽです。公式な解説がどこかにあるかと探したのですが、見つかりませんでした。単に Javadoc の中に以下のように書いてあります。
要は、昔は Math の代替えとして高速だったけれど、Android に JIT が導入されてから、逆に遅くなってしまった。今は内部的には単に Math を呼び出しているだけなので、直接 Math を使うべきである、ということです。なんと随分前から Math を呼び出しているだけだなんてまったく知りませんでした。何となく早くなった気がして、すっかり騙されてました。
API23 以降にアップデートする場合、自分のアプリの中で使っているのであれば地道に直していけばいいのですが、他人のライブラリの中で使われていたりするとちょっと厄介です。API22以下を使うか、作者にお願いして修正してもらうようにしましょう。
Historically these methods were faster than the equivalent double-based Math methods. On versions of Android with a JIT they became slower and have since been re-implemented to wrap calls to Math. Math should be used in preference.
要は、昔は Math の代替えとして高速だったけれど、Android に JIT が導入されてから、逆に遅くなってしまった。今は内部的には単に Math を呼び出しているだけなので、直接 Math を使うべきである、ということです。なんと随分前から Math を呼び出しているだけだなんてまったく知りませんでした。何となく早くなった気がして、すっかり騙されてました。
API23 以降にアップデートする場合、自分のアプリの中で使っているのであれば地道に直していけばいいのですが、他人のライブラリの中で使われていたりするとちょっと厄介です。API22以下を使うか、作者にお願いして修正してもらうようにしましょう。
0 件のコメント :
コメントを投稿