如何从java中相互依赖的字符串中删除部分字符串数据
我有两个类似javascript的字符串数组如何从java中相互依赖的字符串中删除部分字符串数据,java,javascript,string,Java,Javascript,String,我有两个类似javascript的字符串数组 var names = [name1, name2, name3, name4]; var values = [value1, value2, value3, value4]; 我需要将这些值发送到后端。我发送如下邮件 var nameString = "name1,name2,name3,name4"; var valuesString = "value1,value2,value3,value4"; 然后我将在java中的映射上迭代它。我的问
var names = [name1, name2, name3, name4];
var values = [value1, value2, value3, value4];
我需要将这些值发送到后端。我发送如下邮件
var nameString = "name1,name2,name3,name4";
var valuesString = "value1,value2,value3,value4";
然后我将在java中的映射上迭代它。我的问题是,如果我想从名称字符串中删除名称,valueString中相应的值也应该删除。如何在java端以优化的方式实现这一点
Ex: If i want to remove name3, then new strings should be like following:
In Java side:
String nameString = "name1,name2,name4";
String valueString = "value1,value2,value4";
在javascript中:
var data = {name1:value1, name2:value1, name3:value1, name4:value1};
(如果需要,请引用),将对象作为JSON发送,并用java解析它。
我不是java开发人员,所以在特定代码方面我帮不了你那么多,但在java中,所有语言的方法都是一样的,你可以这样做:
public static void main(String[] args) {
String nameString = "name1,name2,name3,name4";
String valueString = "value1,value2,value3,value4";
nameString = removeSection(nameString, 2);
valueString = removeSection(valueString, 2);
System.out.println(nameString);
System.out.println(valueString);
}
private static String removeSection(String val, int del){
String[] a = val.split(",");
String[] b = new String[a.length-1];
System.arraycopy(a,0,b,0,del);
System.arraycopy(a,del+1,b,del,a.length-1-del);
val = arrayToString(b);
return val;
}
private static String arrayToString(String[] a){
String newStr = "";
for (int i=0; i<a.length; i++) {
if(i==0){
newStr += a[i];
}else{
newStr += ","+a[i];
}
}
return newStr;
}
publicstaticvoidmain(字符串[]args){
String nameString=“name1,name2,name3,name4”;
String valueString=“value1、value2、value3、value4”;
名称字符串=removeSection(名称字符串,2);
valueString=removeSection(valueString,2);
System.out.println(名称字符串);
System.out.println(valueString);
}
私有静态字符串删除节(字符串val,int del){
字符串[]a=val.split(“,”);
字符串[]b=新字符串[a.length-1];
系统阵列副本(a、0、b、0、del);
系统阵列副本(a,del+1,b,del,a.length-1-del);
val=数组字符串(b);
返回val;
}
私有静态字符串arrayToString(字符串[]a){
字符串newStr=“”;
对于(int i=0;i为什么不将其存储为JSON对象?因为名称和值似乎是一对一的关系,这将非常有意义。有一些库允许您在Java中使用JSON,然后您可以从JSON对象中删除属性,一切都很好。我需要将这些名称字符串、值字符串设置为jAvaBean+1是一种非常好的方法,但我建议使用更现代、更易于使用的库,如or。