如何解决我正在尝试用Java编写电话验证程序,为什么会出现“ else if if”错误?
我正在尝试通过文件中的电话号码验证进行额外的功劳分配。大部分结构都是由老师提供的,我必须填写或添加某些部分。我不断收到“其他情况,如果没有”错误,从我看到的内容来看,我没有包含任何“;”。在if / else / else if语句之后,因此我不知道为什么会收到此错误。
import java.util.*;
import javax.lang.model.util.ElementScanner6;
import java.io.*;
import static java.lang.System.*;
public class Main
{
public static void main(String[] args) throws IOException
{
Scanner input = new Scanner(new File("ValidPhoneNumber.dat"));
int lines = input.readLine();
input.nextLine();
String phoneNumber = ' ';
for (int i=0; i<lines; i++)
{
phoneNumber = input.nextLine;
if (phoneNumber.length() == 14)
{
out.println("Valid");}
else{
out.println("Invalid");
}
else if (phoneNumber.length() == 12) //error here
{
out.println("Valid");}
else
{out.println("Invalid");
}
else //error here
{
out.print("Invalid");
}
}
input.close();
}
}
错误出现在第63行和第72行
else if (phoneNumber.length() == 12)
和
else
{
out.print("Invalid");
}
解决方法
在第一个错误中,您需要删除else
字。
在第二个错误中,您需要执行相同的操作,或者在第一个错误下更改else
的条件才能使用它。
您在这两个错误中依次两次调用else
。
要恢复,请执行以下操作:您正在呼叫else
,而没有if
(错误显示出来了)。
if(){
}else{
}
if(){
} else if(){
}else{
}
这是使用if
,else if
和else
的正确方法。在您的代码中,它适用。
在此链接中,您将看到说明: How to use if and else
,有效选项
1. Only if
2. if...else
3. if...elseif...else
您不能写if..else,然后再写else if。
更正它会起作用
,您放错了位置
else{
您将其放在if前面的花括号内,因此在else语句之前的那个块中没有if ,因此,如果没有else。 将其从此处拉出并放在支架之后,如果if后,则关闭开口支架。
,如果需要指定多个条件,则应使用if
->多个else if
-> else
,这意味着else
块是最后一个块。
如上所述,新代码必须如下所示:
for (int i = 0; i < lines; i++) {
phoneNumber = input.nextLine;
if (phoneNumber.length() == 14) {
out.println("Valid");
} else if (phoneNumber.length() == 12) {
out.println("Valid");
} else {
out.println("Invalid");
}
}
,
for (int i = 0; i < lines; i++) {
phoneNumber = input.nextLine;
if (phoneNumber.length() == 14 || phoneNumber.length() == 12 ) {
out.println("Valid");
} else {
out.println("Invalid");
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。