Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从java中相互依赖的字符串中删除部分字符串数据_Java_Javascript_String - Fatal编程技术网

如何从java中相互依赖的字符串中删除部分字符串数据

如何从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中的映射上迭代它。我的问

我有两个类似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中的映射上迭代它。我的问题是,如果我想从名称字符串中删除名称,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。