拆分id并添加到数组

时间:2012-02-28 15:55:11

标签: java

我必须拆分ID的最后两个字符,id的长度可能不同。例如56427R1和R00220P3。一旦最后两个字符被拆分,我需要将第一组字符和最后两个字符添加到ArrayList。提前致谢。

我尝试了以下

            List<String> list = new ArrayList<String>();
            list.add(clientValue.substring(0, clientValue.length()-2));

但在删除前半部分时无法保留最后2个字符。

已解决,使用以下代码修复

            ArrayList<String> list = new ArrayList<String>();
            list.add(clientValue.substring(clientValue.length()-2));
            list.add(clientValue.substring(0, clientValue.length()-2));

3 个答案:

答案 0 :(得分:1)

使用String.substring()String.length()分割字符串。

使用ArrayList<String>.add()附加到ArrayList

编辑:

您发布的代码是正确的:调用clientValue时未修改clientValue.substring(),但会返回新的String实例。 Java String是不可变的。 要完成您的代码:

List<String> list = new ArrayList<String>();
list.add(clientValue.substring(0, clientValue.length()-2));
list.add(clientValue.substring(clientValue.length()-2));

答案 1 :(得分:0)

你可以这样轻松地做到:

String myID = "56427R1";
String extractedID = myID.substring((myID.length()-2), myID.length());
ArrayList<String> list = new ArrayList<String>;v
list.add(myID.substring((myID.length()-2)));
list.add(extractedID);

更新:

String myID = "56427R1";
String extractedID = myID.substring((myID.length()-2), myID.length());

char[] a = extractedID.toCharArray();
char[] b = myID.substring(myID.length()-2).toCharArray();
ArrayList<Character> list = new ArrayList<Character>();

for(int i = 0; i < b.length; i++)
list.add(b[i]);

for(int j = 0; j < a.length; j++)
list.add(a[j]);

答案 2 :(得分:0)

string tmp = "56427R1";

ArrayList<String> arrList = new ArrayList()<String>;
arrayList.add(tmp.substring(tmp.length() - 2));
arrayList.add(tmp.substring((tmp.length() - 2), tmp.length()));