将位置单位从英里转换为米 Android

Convert location units from miles to meters Android

我想将英里转换为米?和其他单位公制? 我尝试了很多变体来改变价值,但它没有帮助我,请有人能做到吗?如果有必要,我可以分享我所有的代码,是的,对不起我的英语。

有我的代码请帮忙

Double speedInMilesPerHour = location.getSpeed()* 3.6; //inMeters
    requestParams.put("speed",  Integer.toString(speedInMilesPerHour.intValue()));

    try {
        requestParams.put("date", URLEncoder.encode(dateFormat.format(date), "UTF-8"));
    } catch (UnsupportedEncodingException e) {}

    requestParams.put("locationmethod", location.getProvider());

    if (totalDistanceInMeters > 0) {
        requestParams.put("distance", String.format("%.1f", totalDistanceInMeters / 1609)); // in miles,
    } else {
        requestParams.put("distance", "0.0"); // in miles
    }

    requestParams.put("username", sharedPreferences.getString("userName", ""));
    requestParams.put("phonenumber", sharedPreferences.getString("appID", "")); // uuid
    requestParams.put("sessionid", sharedPreferences.getString("sessionID", "")); // uuid

    Double accuracyInFeet = location.getAccuracy()* 3.28;
    requestParams.put("accuracy",  Integer.toString(accuracyInFeet.intValue()));

    Double altitudeInFeet = location.getAltitude() * 3.28;
    requestParams.put("extrainfo",  Integer.toString(altitudeInFeet.intValue()));

您可以只编写适用于双精度的简单转换方法:

    public static final double METERS_IN_MILE = 1609.344;

    public static double metersToMiles(double meters) {
        return meters / METERS_IN_MILE;
    }
    
    public static double milesToMeters(double miles) {
        return miles * METERS_IN_MILE;
    }