什么';在Java for Android中,将这个字符串分解为键/值字符串的最简单方法是什么?
这是我的什么';在Java for Android中,将这个字符串分解为键/值字符串的最简单方法是什么?,java,android,for-loop,iterator,key-value,Java,Android,For Loop,Iterator,Key Value,这是我的字符串: &username=john&password=12345&email=john@go.com 将其分解为键/值字符串以便将其作为参数添加的最佳和最有效的方法是什么。以下是我需要的模拟示例: for (set in array) { params.add(new BasicNameValuePair(set.key, set.value)); } 您可以为此目的使用(或)。您可以为此目的使用(或)。执行以下操作: String all = "&
字符串
:
&username=john&password=12345&email=john@go.com
将其分解为键/值字符串以便将其作为参数添加的最佳和最有效的方法是什么。以下是我需要的模拟示例:
for (set in array)
{
params.add(new BasicNameValuePair(set.key, set.value));
}
您可以为此目的使用(或)。您可以为此目的使用(或)。执行以下操作:
String all = "&username=john&password=12345&email=john@go.com";
//Split across all instances of the 'and' symbol
String[] keyValueConcat = all.split("&");
Map<String, String> kvPairs = new HashMap<String, String>();
for (String concat : keyValueConcat) {
if (concat.contains("=") {
//For any string in the split that contains an equals sign
//Split over the equals sign and add to the map
String[] keyValueSplit = concat.split("=", 2);
kvPairs.put(keyValueSplit[0], keyValueSplit[1];
}
}
String all=“&username=john&password=12345&email=john@go.com";
//拆分“和”符号的所有实例
字符串[]keyValueConcat=all.split(“&”);
Map kvPairs=newhashmap();
用于(字符串concat:keyValueConcat){
if(concat.contains(“=”){
//对于拆分中包含等号的任何字符串
//在等号上拆分并添加到地图
字符串[]keyValueSplit=concat.split(“=”,2);
kvPairs.put(keyValueSplit[0],keyValueSplit[1];
}
}
映射对应该包含您需要的内容。执行以下操作:
String all = "&username=john&password=12345&email=john@go.com";
//Split across all instances of the 'and' symbol
String[] keyValueConcat = all.split("&");
Map<String, String> kvPairs = new HashMap<String, String>();
for (String concat : keyValueConcat) {
if (concat.contains("=") {
//For any string in the split that contains an equals sign
//Split over the equals sign and add to the map
String[] keyValueSplit = concat.split("=", 2);
kvPairs.put(keyValueSplit[0], keyValueSplit[1];
}
}
String all=“&username=john&password=12345&email=john@go.com";
//拆分“和”符号的所有实例
字符串[]keyValueConcat=all.split(“&”);
Map kvPairs=newhashmap();
用于(字符串concat:keyValueConcat){
if(concat.contains(“=”){
//对于拆分中包含等号的任何字符串
//在等号上拆分并添加到地图
字符串[]keyValueSplit=concat.split(“=”,2);
kvPairs.put(keyValueSplit[0],keyValueSplit[1];
}
}
地图对应该包含您需要的内容。请参见以下问题:
在Android上,Apache库提供了一个查询解析器:
请看这个问题:
在Android上,Apache库提供了一个查询解析器:
String exp=“&username=john&password=12345&email=john@go.com"
字符串[]对=exp.split(&);
字符串[]温度;
Map myMap=newhashmap();
对于(i=0;iString exp=“&username=john&password=12345&email=john@go.com"
字符串[]对=exp.split(&);
字符串[]温度;
Map myMap=newhashmap();
对于(i=0;i不确定它是否在java for android中可用,但在java 8中,可以使用以下方法将字符串分解为键值对:
String string = "&username=john&password=12345&email=john@go.com";
Map<String, String> map= Stream.of(string.split("&")).map(p->p.split("=")).filter(p->p!=null && p.length==2).collect(Collectors.toMap(p->p[0], p->p[1]));
String=“&username=john&password=12345&email=john@go.com";
Map Map=Stream.of(string.split(&)).Map(p->p.split(=”).filter(p->p!=null&&p.length==2).collect(Collectors.toMap(p->p[0],p->p[1]);
不确定是否在java for android中可用,但在java 8中,可以使用以下方法将字符串分解为键值对:
String string = "&username=john&password=12345&email=john@go.com";
Map<String, String> map= Stream.of(string.split("&")).map(p->p.split("=")).filter(p->p!=null && p.length==2).collect(Collectors.toMap(p->p[0], p->p[1]));
String=“&username=john&password=12345&email=john@go.com";
Map Map=Stream.of(string.split(&)).Map(p->p.split(=”).filter(p->p!=null&&p.length==2).collect(Collectors.toMap(p->p[0],p->p[1]);
这些字符串从何而来?它们实际上是查询字符串的一部分吗?如果是,您应该使用能够理解查询字符串的内容(执行所有适当的取消跳过等操作)。它看起来可疑地像一个查询字符串。是的,它是来自第三方来源的查询字符串。有什么特殊的方法来分解这些字符串吗?这些字符串从哪里来?它们实际上是查询字符串的一部分吗?如果是,你应该使用理解查询字符串的东西(执行所有适当的取消跳过等)。它看起来像一个可疑的查询字符串。是的,它是来自第三方来源的查询字符串。有什么特殊的方法来分解它们吗?