无无限循环的二进制代码和重复程序的java验证
我被指派制作一个将二进制转换成十进制的程序。我顺利完成了这一部分,但我必须验证用户输入的内容,以确保他们输入的是二进制,否则应该是“重试”,我还必须使用字母“y/y”使程序重复以继续,否则它存在而不使用无限循环。如果没有无限循环,我不知道怎么做。多谢各位
import java.util.Scanner;
class Quiz4 {
public static void main(String args[]){
Scanner input = new Scanner( System.in );
System.out.print("Enter a binary number: ");
String binaryString =input.nextLine();
System.out.println("Output: "+Integer.parseInt(binaryString,2));
}
}
# 1 楼答案
以下功能可用于确保输入只有1和0
假设你有这样的东西来接受用户输入
编辑:(向OP解释文件结构)
我知道这似乎有点代码重。但是,我帮你了吗
# 2 楼答案
好的,现在您已经发布了一些代码,您需要阅读(并理解)您的需求
从你的帖子来看,具体的要求是不要使用“无限循环”——我认为这意味着我可以使用条件循环
因此,假设我了解您的要求,我会:
(!myvar.toLower().equals("y"))
),退出上述循环李>请随意编写代码&;更新你的帖子,如果需要,我会更新这个答案。很抱歉,但在我看来,为你写代码既违背了SO的精神,也会对你的学习产生反作用
然而,解决这个问题的另一种方法是递归。如果你的老师真的要求你通过递归来解决这个问题,我会认真考虑找另一个老师。