我想为基准创建1MB字符串,所以我编写了如下代码:
public final static long KB = 1024;
public final static long MB = 1024 * KB;
public static void main(String[] args){
String text_1MB=createString(1*MB);
}
static String createString(long size){
StringBuffer o=new StringBuffer();
for(int i=0;i<size;i++){
o.append("f");
}
return o.toString();
}
Run Code Online (Sandbox Code Playgroud)
我觉得这种方法createString
不好而且愚蠢
有没有想过优化createString
方法?
Jon*_*eet 16
怎么样:
char[] chars = new char[size];
// Optional step - unnecessary if you're happy with the array being full of \0
Arrays.fill(chars, 'f');
return new String(chars);
Run Code Online (Sandbox Code Playgroud)
您只需创建一个大字符数组即可.
char[] data = new char[1000000];
Run Code Online (Sandbox Code Playgroud)
如果您需要制作一个真实的String
对象,您可以:
String str = new String(data);
Run Code Online (Sandbox Code Playgroud)