这是我在java中编写的代码,我仍然是java的初学者,所以如果这是一个noob错误请纠正它并提供替代解决方案来读取字符串并将其转换为char数组
import java.util.Scanner;
import java.io.*;
class TestClass {
public static void main(String args[] ) throws Exception {
Scanner s = new Scanner(System.in);
String str = s.nextLine();
char[] c = str.toCharArray(str);
int x=0,y=0;
for(int i=0;i<=str.length;i++)
{
if(c[i]=='L')
{
x=x+1;
}
else if(c[i]=='R')
{
x=x-1;
}
else if(c[i]=='U')
{
y=y-1;
}
else if(c[i]=='D')
{
y=y-1;
}
}
System.out.println(x+""+y);
}
}
我收到以下错误
10:错误:类String中的方法
toCharArray
无法应用于 给定类型;无参数字符串实际和正式参数列表的长度不同 12:错误:找不到符号
String类型的可变长度变量str
答案 0 :(得分:2)
你把一个参数放在一个不带任何函数的函数中:
char[] c = str.toCharArray(str);
只需使用
char[] c = str.toCharArray();
有关详细信息,请参阅String documentation
答案 1 :(得分:0)
方法str.toCharArray(str);不存在。 toCharArray不参数。替换为str.toCharArray()
答案 2 :(得分:0)
结合答案(我不赞成这些)
你把一个参数放在一个不带任何函数的函数中:
char[] c = str.toCharArray(str);
只需使用
char[] c = str.toCharArray();
-by Arc676
还要注意
它的str.length()不是str.length
-by TomN
两者都是正确答案
另外,我注意到你(我确实认为这些)
for(int i=0;i<=str.length;i++)
它应该是&#39;&lt;&#;;而不是&#39;&lt; =&#39;避免出界异常
for(int i=0;i<str.length();i++)
另外,只是一个提示:
System.out.println(x+""+y);
我认为你错过了在这些引号中添加空格。