try {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter the continent;");
String CN = in.readLine();
String MaxDate="1";
for(Earthquakerecd e : eqList)
{
if( e.getContinent().equals("CN"))
{
MaxDate=e.getDate();
}
{
System.out.println( e.toString());
}
}
System.out.println( MaxDate);
}
catch (IOException e)
{
System.out.println("IOException has been caught");
}
Run Code Online (Sandbox Code Playgroud)
我认为这是一个简单的问题.在此问题中,Maxdate声明为1. CN是大陆的字符串.如果用户输入与大陆匹配,则日期应从e.getDate()传递到Maxdate.在任何情况下,我们都不应该将输出视为1,它应该是来自对象e的某个日期.Maxdate我总是得到1分.任何可能的解决方 我的语法对不对?
好像你想要的:
if(e.getContinent().equals(CN))
Run Code Online (Sandbox Code Playgroud)
现在你正在与字符串文字"CN"进行比较.您没有将变量CN用于任何事情.
我假设你打算else在你的if陈述后插入一个?
此外,在Java中,通常不使用大写字母启动变量名称(将字符串命名为cn而不是CN).