場所に関するAndroid開発者のブログ投稿を読んでいるときに、次のコードに出くわしました(ブログから切り取って貼り付けます)。
List<String> matchingProviders = locationManager.getAllProviders();
for (String provider: matchingProviders) {
Location location = locationManager.getLastKnownLocation(provider);
if (location != null) {
float accuracy = location.getAccuracy();
long time = location.getTime();
if ((time > minTime && accuracy < bestAccuracy)) {
bestResult = location;
bestAccuracy = accuracy;
bestTime = time;
}
else if (time < minTime &&
bestAccuracy == Float.MAX_VALUE && time > bestTime){
bestResult = location;
bestTime = time;
}
}
}
残りはかなり明確ですが、この行は私を困惑させます:
else if (time < minTime &&
bestAccuracy == Float.MAX_VALUE && time > bestTime){
「時間」は、許容可能なレイテンシ期間内であり、以前のbestTimeよりも新しい必要があります。それは理にかなっている。
しかし、bestAccuracyとMax Floatの値の比較はどういう意味ですか?精度がフロートが保持できる最大値と正確に等しくなるのはいつですか?