遇见有关String的例子与问题
String类是不可变的(final),对String类的任何改变,都是返回一个新的String类对象。
String字符串转数组
String s = "2,654,24,6554";
1. split
System.out.print(a.length);
int[] result = new int[a.length];
for (int i = 0; i < a.length; i++) {
result[i] = Integer.parseInt(a[i]);
}
2.StringTokenizer
StringTokenizer tok = new StringTokenizer(s, ",");int count = tok.countTokens();
int[] result = new int[count];
for (int i = 0; i < count; i++) {
String temp = (String) tok.nextElement();
result[i] = Integer.parseInt(temp);
}
给你一个字符串 倒序输出来
public String getString(String str) {
if (str != null) {
String newStr = "";
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(str.length() - 1 - i);
newStr = newStr + c;
}
return newStr;
} else {
return null;
}
}
给你 a b c 则输出 abc acb bac bca cab cba
String s = "ABC";
List<String> result = list(s, "");
private static List<String> list(String base, String buff) {
List<String> result = new ArrayList<String>();
if (base.length() <= 0) {
result.add(buff); //获得集合的元素
}
for (int i = 0; i < base.length(); i++) {
List<String> temp = list(new StringBuilder(base).deleteCharAt(i)
.toString(), buff + base.charAt(i)); //自身递归
result.addAll(temp);
}
return result;
}