use*_*796 1 java arrays string
我在代码中收到“必须是数组类型,但它解析为字符串”错误。它还说 i (在下面的代码中)无法解析为我没有得到的变量。
public class DNAcgcount{
public double ratio(String dna){
int count=0;
for (int i=0;i<dna.length();i++);
if (dna[i]== "c"){
count+= 1;
if (dna[i]=="g"){
count+=1;
double answer = count/dna.length();
return answer;
}
}
}
Run Code Online (Sandbox Code Playgroud)
}
大家能帮我看看问题出在哪里吗?我是 Java 编码新手,所以我还不完全适应这种格式。
非常感谢,朱奈德
不能使用下标 ( dna[i]) 访问字符串的字符。使用 charAt 代替:
dna.charAt(i) == 'c'
Run Code Online (Sandbox Code Playgroud)
另外,"c"是一个String,'c'是一个char。
还有一件事 - 整数除法(例如int_a / int_b)会产生一个 int,因此你会失去准确性,而是 - 将其中一个ints 转换为double:
double answer = count/(double)dna.length();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22688 次 |
| 最近记录: |