J2K: Special conversion for java.lang.String methods.
#KT-7732
This commit is contained in:
@@ -0,0 +1,117 @@
|
||||
import java.nio.charset.Charset;
|
||||
import java.util.*;
|
||||
|
||||
class A {
|
||||
void constructors() throws Exception {
|
||||
new String();
|
||||
// TODO: new String("original");
|
||||
new String(new char[] {'a', 'b', 'c'});
|
||||
new String(new char[] {'b', 'd'}, 1, 1);
|
||||
new String(new int[] { 32, 65, 127 }, 0, 3);
|
||||
|
||||
byte[] bytes = new byte[] { 32, 65, 100, 81 };
|
||||
Charset charset = Charset.forName("utf-8");
|
||||
new String(bytes);
|
||||
new String(bytes, charset);
|
||||
new String(bytes, 0, 2);
|
||||
new String(bytes, "utf-8");
|
||||
new String(bytes, 0, 2, "utf-8");
|
||||
new String(bytes, 0, 2, charset);
|
||||
|
||||
new String(new StringBuilder("content"));
|
||||
new String(new StringBuffer("content"));
|
||||
}
|
||||
|
||||
void normalMethods() {
|
||||
String s = "test string";
|
||||
s.length();
|
||||
s.isEmpty();
|
||||
s.charAt(1);
|
||||
s.codePointAt(2);
|
||||
s.codePointBefore(2);
|
||||
s.codePointCount(0, s.length());
|
||||
s.offsetByCodePoints(0, 4);
|
||||
s.compareTo("test 2");
|
||||
s.concat(" another");
|
||||
s.contains("seq");
|
||||
s.contentEquals(new StringBuilder(s));
|
||||
s.contentEquals(new StringBuffer(s));
|
||||
s.endsWith("ng");
|
||||
s.startsWith("te");
|
||||
s.startsWith("st", 2);
|
||||
s.indexOf("st");
|
||||
s.indexOf("st", 5);
|
||||
s.substring(1);
|
||||
s.substring(0, 4);
|
||||
s.subSequence(0, 4);
|
||||
s.replace('e', 'i');
|
||||
s.replace("est", "oast");
|
||||
s.intern();
|
||||
s.toLowerCase();
|
||||
s.toLowerCase(Locale.FRENCH);
|
||||
s.toUpperCase();
|
||||
s.toUpperCase(Locale.FRENCH);
|
||||
|
||||
s.toString();
|
||||
s.toCharArray();
|
||||
|
||||
char[] chars = new char[10];
|
||||
s.getChars(1, 11, chars, 0);
|
||||
}
|
||||
|
||||
void specialMethods() throws Exception {
|
||||
String s = "test string";
|
||||
s.equals("test");
|
||||
s.equalsIgnoreCase("tesT");
|
||||
s.compareToIgnoreCase("Test");
|
||||
s.regionMatches(true, 0, "TE", 0, 2);
|
||||
s.regionMatches(0, "st", 1, 2);
|
||||
s.matches("\\w+");
|
||||
s.replaceAll("\\w+", "---");
|
||||
s.replaceFirst("([s-t])", "A$1");
|
||||
useSplit(s.split("\\s+"));
|
||||
useSplit(s.split("\\s+", 0));
|
||||
useSplit(s.split("\\s+", -1));
|
||||
useSplit(s.split("\\s+", 2));
|
||||
int limit = 5;
|
||||
useSplit(s.split("\\s+", limit));
|
||||
s.trim();
|
||||
|
||||
s.getBytes();
|
||||
s.getBytes(Charset.forName("utf-8"));
|
||||
s.getBytes("utf-8");
|
||||
}
|
||||
|
||||
void staticMethods() {
|
||||
String.valueOf(1);
|
||||
String.valueOf(1L);
|
||||
String.valueOf('a');
|
||||
String.valueOf(true);
|
||||
String.valueOf(1.11F);
|
||||
String.valueOf(3.14);
|
||||
String.valueOf(new Object());
|
||||
|
||||
String.format(Locale.FRENCH, "Je ne mange pas %d jours", 6);
|
||||
String.format("Operation completed with %s", "success");
|
||||
|
||||
char[] chars = {'a', 'b', 'c'};
|
||||
String.valueOf(chars);
|
||||
String.valueOf(chars, 1, 2);
|
||||
String.copyValueOf(chars);
|
||||
String.copyValueOf(chars, 1, 2);
|
||||
|
||||
Comparator<String> order = String.CASE_INSENSITIVE_ORDER;
|
||||
}
|
||||
|
||||
void unsupportedMethods() {
|
||||
String s = "test string";
|
||||
/* TODO:
|
||||
s.indexOf(32);
|
||||
s.indexOf(32, 2);
|
||||
s.lastIndexOf(32);
|
||||
s.lastIndexOf(32, 2);
|
||||
*/
|
||||
}
|
||||
|
||||
void useSplit(String[] result) {}
|
||||
}
|
||||
Reference in New Issue
Block a user