所以我正在研究一个由于某些原因仅限于 java squawk 1.4 的项目。因此,String
该类不包含标题中的四个方法。我在我的程序中需要这些方法,并得出结论,我必须创建一个 Util 类来自行执行这些方法的功能。
首先,这是否存在于某个地方?显然,我的第一反应是考虑从String
类中复制源代码,但是这些方法的依赖关系太深了,我无法使用。
其次,我无法复制split(String regex)
and的行为replace(CharSequence target, CharSequence replacement)
。contains(String)
显然很容易,isEmpty()
但我在编写其他代码时遇到了麻烦。
现在,我split
正在工作(尽管它的工作方式与 jdk 7 中的不同,我不想得到错误)。
public static String[] split(String string, char split) {
String[] s = new String[0];
int count = 0;
for (int x = 0; x < string.length(); x++) {
if (string.charAt(x) == split) {
String[] tmp = s;
s = new String[++count];
System.arraycopy(tmp, 0, s, 0, tmp.length);
s[count - 1] = string.substring(x).substring(1);
if (contains(s[count - 1], split + "")) {
s[count - 1] = s[count - 1].substring(0, s[count - 1].indexOf(split));
}
}
}
return s.length == 0 ? new String[]{string} : s;
}
Replace
很难做到,我已经尝试了几个小时。这似乎是谷歌/档案馆从未尝试过的问题。