1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
|
// Tests using the index returned from String.indexOf
class StringIndexOf {
public static String remove(String l, String s) {
int i = l.indexOf(s);
if (i != -1) {
return l.substring(0, i) + l.substring(i + s.length());
}
return l;
}
public static String nocheck(String l, String s) {
int i = l.indexOf(s);
// :: error: (argument.type.incompatible)
return l.substring(0, i) + l.substring(i + s.length());
}
public static String remove(String l, String s, int from, boolean last) {
int i = last ? l.lastIndexOf(s, from) : l.indexOf(s, from);
if (i >= 0) {
return l.substring(0, i) + l.substring(i + s.length());
}
return l;
}
public static String stringLiteral(String l) {
int i = l.indexOf("constant");
if (i != -1) {
return l.substring(0, i) + l.substring(i + "constant".length());
}
// :: error: (argument.type.incompatible)
return l.substring(0, i) + l.substring(i + "constant".length());
}
public static char character(String l, char c) {
int i = l.indexOf(c);
if (i > -1) {
return l.charAt(i);
}
// :: error: (argument.type.incompatible)
return l.charAt(i);
}
}
|