import java.util.Scanner;
class Question1{
void test(String s, int d){
Scanner in = new Scanner(System.in);
System.out.println("Enter a String");
s = in.nextLine();
System.out.println("Enter an Integer");
d = in.nextInt();
String c="";
for(int i=0;i<d;i++){
c = c + s;
}
}
}
class Times{
public static void main(String args[]){
Question1 q= new Question1();
q.test(c);
}
}
这是我的整个代码,它显示编译时错误:Cannot find symbol c
。我已经搜索了它并通过了代码,但无法修复它。
答案 0 :(得分:1)
对象c
仅存在于函数test()
的范围内。仅使用一个参数调用test()
也会导致错误,因为您的函数签名需要两个参数(一个类型为int
,另一个类型为String
),但未提供。 / p>
假设您覆盖了传递给函数的值,最好完全删除参数,而是将d
和s
声明为函数内的局部变量。
答案 1 :(得分:0)
考虑你的时代课程:
public static void main(String args[]){
Question1 q= new Question1();
q.test(c);
}
q.test(c);
第一件事错误是你的班级里面没有变量或对象c
,所以它显示找不到符号。
其次,方法test
将采用两个参数,它应该被称为
test(String,int)
如果要在Times Class中获取c的值,请将test {的return type
变为string并将其分配给Times Class中的变量