我想请某人输入一封信,当他们这样做时,检查那封信是否是我问他们的某封信。如果是,我的输出将显示一个数组列表。我的代码:
import java.util.Scanner;
Scanner input = new Scanner(System.in);
public static void main(String[] args) {
String[] rodent;
String[] dog;
String[] cat;
rodent = new String[] {"Rat", "Guinea Pig", "Mouse"};
dog = new String[] {"Rottweiler", "Basset Hound", "Weiner Dog"};
cat = new String[] {"Lion", "Tiger", "Mountain Lion"};
Scanner input = new Scanner(System.in);
System.out.print("Please Enter [R] for Rodent, [D] for Dogs, and"
+ " [C] for Cats: ");
char character = input.next().charAt(0);
if(character == 'R'); {
System.out.print(rodent[0]+", "+rodent[1]+", "+rodent[2]);
} // closes 'R' statement
if(character == 'D') {
System.out.print(dog[0]+", "+dog[1]+", "+dog[2]);
} //closes 'D' statement
if(character == 'C') {
System.out.print(cat[0]+", "+cat[1]+", "+cat[2]);
} //closes 'C' statement
}
如果他们输入R,则输出正确。
如果他们进入D,它会输出啮齿动物和狗。
如果他们输入C,它只输出啮齿动物。
对此有什么解决方法?
答案 0 :(得分:2)
确实是因为不需要的分号,但总是尝试使用switch-case结构进行这些检查以获得最佳实践。
public function compose(View $view)
{
$view->with('page', $this->getPage());
}
public function getPage()
{
$viewVariables = 2;
$optionalVariablesForPartialsViews = 1;
return $viewVariables + $optionalVariablesForPartialsViews;
}
答案 1 :(得分:1)
您的代码中有拼写错误:
if(character == 'R'); {
移除终止;
的{{1}},它将有效。
答案 2 :(得分:1)
代码中有一个错误的分号:
if(character == 'R'); {
删除它,你的代码就可以了!
Semicolon说你的if语句已经完成 - 所以以下部分
{
System.out.print(rodent[0]+", "+rodent[1]+", "+rodent[2]);
} // closes 'R' statement
不属于您的第一个if
。
因此,将始终打印上述声明。