我必须拆分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));
答案 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()));