Java nameValuePair数组列表的数字等效项?

Java nameValuePair数组列表的数字等效项?,java,php,http,Java,Php,Http,我正在处理双打和寻找“双”相当于这个 ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(); nameValuePairs.add(new BasicNameValuePair("lat",lat)); nameValuePairs.add(new BasicNameValuePair("lng",lng)); ArrayList nameValuePairs=新的ArrayLi

我正在处理双打和寻找“双”相当于这个

ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("lat",lat));
nameValuePairs.add(new BasicNameValuePair("lng",lng));
ArrayList nameValuePairs=新的ArrayList();
添加(新的BasicNameValuePair(“lat”,lat));
名称值对。添加(新的基本名称值对(“lng”,lng));
编辑//我正在发出一个HTTP请求,我认为需要将lat值映射到php lat变量,将long映射到php变量

谢谢

是一个表示通用元组的JDK类。不幸的是,它是一个内部类,使用起来非常非常冗长(特别是在使用类型参数时)。此外,将其与
double
值一起使用需要对这些值进行包装(可能使用自动装箱),这会增加更多开销

您可能想编写自己的
StringDoublePair
类-这并不难。

是一个表示通用元组的JDK类。不幸的是,它是一个内部类,使用起来非常非常冗长(特别是在使用类型参数时)。此外,将其与
double
值一起使用需要对这些值进行包装(可能使用自动装箱),这会增加更多开销


您可能想编写自己的
StringDoublePair
类-这并不难。

为什么不使用映射

Map<String, Double> nameValuePairs = new HashMap<String, Double>();
nameValuePairs.put("lat", lat);
nameValuePairs.put("lng", lng);
Map nameValuePairs=newhashmap();
nameValuePairs.put(“lat”,lat);
名称值对。输入(“液化天然气”,液化天然气);

为什么不使用地图

Map<String, Double> nameValuePairs = new HashMap<String, Double>();
nameValuePairs.put("lat", lat);
nameValuePairs.put("lng", lng);
Map nameValuePairs=newhashmap();
nameValuePairs.put(“lat”,lat);
名称值对。输入(“液化天然气”,液化天然气);
也许是这样

ArrayList<double[]> latLons = new ArrayList<double[]>();
latlons.add(new double[]{60.0, 20.0});
ArrayList latLons=new ArrayList();
Latrons.add(新的双[]{60.0,20.0});
也许是这样

ArrayList<double[]> latLons = new ArrayList<double[]>();
latlons.add(new double[]{60.0, 20.0});
ArrayList latLons=new ArrayList();
Latrons.add(新的双[]{60.0,20.0});

如果必须使用
NameValuePair
,有两种可能的解决方案

您可以将
映射
转换为
名称值对
列表

List<NameValuePair> convertParameters(Map<String, Double> parameters) {
    List<NameValuePair> result = new ArrayList<NameValuePair>();

    for (Entry<String, Double> entry : parameters.entrySet()) {
        result.add(new BasicNameValuePair(entry.getKey(), entry.getValue().toString()));
    }

    return result;
}
在后一种情况下,您可以使用可以直接传递给UrlEncodedFormEntity的构造函数的NameValuePair列表:

List<NameValuePair> parameters = new ArrayList<NameValuePair>();
parameters.add(new DoubleNameValuePair("lat", 1.0));
parameters.add(new DoubleNameValuePair("lng", 2.0));
List parameters=new ArrayList();
添加(新的DoubleNameValuePair(“lat”,1.0));
添加(新的DoubleNameValuePair(“lng”,2.0));

如果必须使用
NameValuePair
,有两种可能的解决方案

您可以将
映射
转换为
名称值对
列表

List<NameValuePair> convertParameters(Map<String, Double> parameters) {
    List<NameValuePair> result = new ArrayList<NameValuePair>();

    for (Entry<String, Double> entry : parameters.entrySet()) {
        result.add(new BasicNameValuePair(entry.getKey(), entry.getValue().toString()));
    }

    return result;
}
在后一种情况下,您可以使用可以直接传递给UrlEncodedFormEntity的构造函数的NameValuePair列表:

List<NameValuePair> parameters = new ArrayList<NameValuePair>();
parameters.add(new DoubleNameValuePair("lat", 1.0));
parameters.add(new DoubleNameValuePair("lng", 2.0));
List parameters=new ArrayList();
添加(新的DoubleNameValuePair(“lat”,1.0));
添加(新的DoubleNameValuePair(“lng”,2.0));

我假设您谈论的是ApacheHttpClient中使用的NameValuePair。该值必须是字符串。您必须将其转换为字符串

我就是这么做的

ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("lat",""+lat));
nameValuePairs.add(new BasicNameValuePair("lng",""+lng));
ArrayList nameValuePairs=新的ArrayList();
添加(新的BasicNameValuePair(“lat”和“+lat”);
添加(新的BasicNameValuePair(“lng”)和“+lng”);

我假设您谈论的是ApacheHttpClient中使用的NameValuePair。该值必须是字符串。您必须将其转换为字符串

我就是这么做的

ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("lat",""+lat));
nameValuePairs.add(new BasicNameValuePair("lng",""+lng));
ArrayList nameValuePairs=新的ArrayList();
添加(新的BasicNameValuePair(“lat”和“+lat”);
添加(新的BasicNameValuePair(“lng”)和“+lng”);

(我对这个问题有点不知所措…)好吧,你看,我正在发出一个HTTP请求,我认为需要将lat值映射到一个php lat变量,将long映射到一个php变量。很抱歉,如果很明显如何做到这一点,我对这些概念相当陌生。(我对这个问题有点迷茫…)好吧,你看,我正在发出一个HTTP请求,我认为需要将lat值映射到一个php lat变量,将long映射到一个php变量。很抱歉,如果很明显怎么做,我对这些概念比较陌生。尝试发送HTTP请求时,如果我这样做,我会得到。。第行出现“构造函数UrlEncodedFormEntity(映射)未定义”错误。。setEntity(新的UrlEncodedFormEntity(nameValuePairs));正在尝试发送HTTP请求,如果我这样做,则会收到。。第行出现“构造函数UrlEncodedFormEntity(映射)未定义”错误。。setEntity(新的UrlEncodedFormEntity(nameValuePairs));问题是我必须用Double做一些计算,这样才不会完全起作用:(问题是我必须用Double做一些计算,这样才不会完全起作用:(