仅在java / android中将字符串拆分为两个相同大小的部分

时间:2014-10-30 10:07:11

标签: java android string substring

如何将一个字符串分成两个大小相同但不在单词之间的部分?
我想将一个字符串分成两个相同大小的部分,但字符串不应该在单词之间分割,但它只是在白色空格之间吐出。

3 个答案:

答案 0 :(得分:3)

  1. 确定单词的长度
  2. 确定中间
  3. 从中间搜索两个方向的下一个空格
  4. 将距离较低的空白空间带到中间并创建两个子串

答案 1 :(得分:0)

对于奇数长度和偶数长度的分裂字符串我在代码下使用,我回答。

String st= (String) st.getText().toString().trim();
              int length = st.length();
                boolean flag = length%2==0?true:false;
                String[] splits = new String[2];
                if(flag){
                    splits[0] = st.substring(0, length/2);
                    splits[1] = st.substring(length/2, length);
                }else{
                    int middle = length/2;
                    splits[0] = st.substring(0, middle);
                    splits[1] = st.substring(middle, length);
                }

答案 2 :(得分:-2)

        String s = "123456789";
        int length = s.length();
        boolean flag = length%2==0?true:false;
        String[] splits = new String[2];
        if(flag){
            splits[0] = s.substring(0, length/2);
            splits[1] = s.substring(length/2, length);
        }else{
            System.out.println("cannot split this string into two same size parts,because its length is not even");
        }
        System.out.println(splits[0]);
        System.out.println(splits[1]);