我要做的问题如下
公共静态字符串randomDNAString(int dnaLength)
/ ** * @param dnaLength非负整数* @返回随机字符串
长度dnaLength由四个字符A,T,G和C组成* /
我以为我做的正确(尽管效率很低),但是它什么也没返回。这是我的代码。任何帮助表示赞赏。
public static String randomDNAString(int dnaLength){
Random rand = new Random();
char[] dna;
dna = new char[dnaLength];
for(int i = 0; i<dnaLength;i++){
int tempC = rand.nextInt(4);
if(tempC == 0)
dna[i] = 'A';
if(tempC == 1)
dna[i] = 'G';
if(tempC == 2)
dna[i] = 'C';
if(tempC == 3)
dna[i] = 'T';
}
return (java.util.Arrays.toString(dna));
}
最佳答案
另一个答案的建议是使用StringBuilder
。但是,您可以使其更简单:
public static String randomDNAString(int dnaLength) {
Random rand = new Random();
StringBuilder dna = new StringBuilder(dnaLength);
for (int i = 0; i < dnaLength; i++) {
dna.append("ACGT".charAt(rand.nextInt(4)));
}
return dna.toString();
}