JAVA字符串反转 大神求问 谢谢

JAVA问题:

字符串[["109.3954270","24.3560590"],["109.3962230","24.3557100"]]

转为

      [["109.3962230","24.3557100"],["109.3954270","24.3560590"]]

public static void main(String[] args) {
// TODO Auto-generated method stub
String teString="[[\"109.3954270\",\"24.3560590\"],[\"109.3962230\",\"24.3557100\"]]";
System.out.println(teString);

}

这个不要用字符串存储,用一个hashmap, 什么的 ,直接用迭代器 ,进行三角交换就行

以逗号隔开 两个随便你怎么排位置

 public class Test {
    public static void main(String[] args) {
        //下面的处理方式适用于多个类似的字符串拼接,不仅仅限制于2个
        String teString="[[\"109.3954270\",\"24.3560590\"],[\"109.3962230\",\"24.3557100\"]]";
        //去掉首尾
        teString = teString.substring(1);
        teString = teString.substring(0,teString.length()-1);
        System.out.println(teString);//输出结果["109.3954270","24.3560590"],["109.3962230","24.3557100"]
        //以特殊符号切分
        String[] strArray = teString.split("\\],\\[");
        StringBuffer sb = new StringBuffer();
        for (int i = strArray.length-1; i >=0 ; i--) {
            //最后一个缺失[
            if(i==strArray.length-1){
                sb.append("["+strArray[i]);
            }else{
                //第一个缺失]
                if(i==0){
                    sb.append(","+strArray[i]+"]");
                }else{//其他的缺失[和]
                    sb.append(",["+strArray[i]+"]");
                }
            }
        }
        sb.append("]");
        sb.insert(0, "[");
        System.out.println(sb.toString());//输出结果[["109.3962230","24.3557100"],["109.3954270","24.3560590"]]
    }

}

可以吧我得代码封装成一个方法,直接通过方法调用就行

 public class Test {
    public static void main(String[] args) {
        //下面的处理方式适用于多个类似的字符串拼接,不仅仅限制于2个
        String teString="[[\"109.3954270\",\"24.3560590\"],[\"109.3962230\",\"24.3557100\"]]";
        System.out.println(new Test().dealStr(teString));
    }
    /**
     * 处理字符串
     * @param teString
     * @return
     */
    public String dealStr(String teString) {
        // 去掉首尾
        teString = teString.substring(1);
        teString = teString.substring(0, teString.length() - 1);
        System.out.println(teString);// 输出结果["109.3954270","24.3560590"],["109.3962230","24.3557100"]
        // 以特殊符号切分
        String[] strArray = teString.split("\\],\\[");
        StringBuffer sb = new StringBuffer();
        for (int i = strArray.length - 1; i >= 0; i--) {
            // 最后一个缺失[
            if (i == strArray.length - 1) {
                sb.append("[" + strArray[i]);
            } else {
                // 第一个缺失]
                if (i == 0) {
                    sb.append("," + strArray[i] + "]");
                } else {// 其他的缺失[和]
                    sb.append(",[" + strArray[i] + "]");
                }
            }
        }
        sb.append("]");
        sb.insert(0, "[");
        System.out.println(sb.toString());// 输出结果[["109.3962230","24.3557100"],["109.3954270","24.3560590"]]
        return sb.toString();
    }
}

String str = "[[\"109.3962230\",\"24.3557100\"],[\"109.3954270\",\"24.3560590\"]]";
List> list = (List>) JSON.parse(str);
Collections.swap(list, 0, list.size() - 1);
System.out.println(list);

 <!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="./jquery.min.js"></script>
<meta charset="UTF-8">
<title>Insert title here</title>
<script>
    var json = [["109.3954270","24.3560590"],["109.3962230","24.3557100"]];
    $(function(){
        $("#p1").html(json.toString());
        $("#p2").html(json.reverse().toString());
    });
</script>
</head>
<body>
    <p id="p1"></p>
    <p id="p2"></p>
</body>
</html>


这种方法我最喜欢用了,从后端用jsp取数据直接赋值:
var json = [];
<c:if test="${xxxx !=null&&!"".equals(xxxx)}"> //if标签必须有,否则,在xxxx为空的时候前端代码会变为'var=',语法不完整
var json = xxxx;                                           //相当于定义一个数组
</c:if>

大体上就这个思路,有不对的地方你再改改,我觉得没问题,逻辑比较复杂的用这个方法,逻辑简单的用不着