自从十月的第一周以来,我一直在研究java,我似乎无法继续这个问题。我解决了一个问题而另一个问题不断出现。我正在使用Blue J,我正在尝试向响应数组添加一个数组。这是代码:
public class eDiary{
public static void main (String args[]){
int [] days = {1,2,3,4,5,6,7};
String [] responses;
int i = 0;
for(i=0; i<7; i++){
String response = Console.readString("What is your major event for day " + days[i]);
responses[responses.length] = responses;
}
}
}
我正在尝试让用户输入当天的重大事件。每个事件都应该将自己添加到响应数组中,因为它对应于days数组(响应1对应于第1天)我没有完成代码,但这是第一部分。该错误一直提到“respond [responses.length] =响应中的不兼容类型;我如何处理这个问题。可能会有更多错误,因为BlueJ似乎一次只显示一个错误。
答案 0 :(得分:5)
在第
行 responses[responses.length] = responses;
响应是一个数组。您只能指定一个字符串
可能你想要这样做
responses[responses.length] = response;
在问题的背景下
推荐的更改:
此外,您应该使用i
代替responses.length:
responses[i] = response;
初始化回复:
String [] responses;
到 - &GT;
String [] responses = new String[7];
//提供7是固定长度。
答案 1 :(得分:1)
您永远不会初始化responses
,它始终为空,很可能是您想要的
String[] responses=new String[days.length]; //Assuming responses should be the same length as days
然后你可以添加每个响应到这个(现在非null)数组,所以
for(i=0; i<7; i++){
String response = Console.readString("What is your major event for day " + days[i]);
responses[i] = response; //Note response not responses
}
在这里,您可以在数组的每个7“框”中添加一个String,