我正在编写一个程序,将二进制数转换为十进制数,我只是一个新手程序员。我一直试图确定输入的字符串是二进制数,这意味着它只包含1和0。到目前为止,我的代码是:
String num;
char n;
Scanner in = new Scanner(System.in);
System.out.println("Please enter a binary number or enter 'quit' to quit: ");
num = in.nextLine();
n = num.charAt(0);
if (num.equals("quit")){
System.out.println("You chose to exit the program.");
return;
}
if (n != 1 || n != 0){
System.out.println("You did not enter a binary number.");
}
也就是说,无论输入什么(然后退出),即使输入了二进制数,程序都会输出“您没有输入二进制数”。我确信我的if语句是错误的或我的字符声明是错误的,但是我已经尝试了我个人知道的一切来纠正这个问题,但我在网上找不到任何帮助。任何帮助都将不胜感激。
< code>n!=1 || n!=0始终为真,因为不能同时有n = 0和1。我猜你想写< code>n!=1
您可以只使用正则表达式:
num.matches("[01]+")
如果字符串 num
仅包含 0
和 1
个字符,则为 true
,否则为 false
。
问题内容: 我想检查a是否仅包含数字。我用这个: 但意识到它也允许和。基本上,我要确保只能包含数字,而不能包含其他字符。由于和都是数字,所以不是正确的方法。也许我需要一个正则表达式?有小费吗? 问题答案: 怎么样
问题内容: 这个想法是读取String并确认它不包含任何数字字符。因此,“ smith23”之类的内容将不被接受。 问题答案: 你想要什么?速度还是简单?为了提高速度,请选择基于循环的方法。为简单起见,请使用一种基于内衬RegEx的方法。 速度 简单
使用。但仍不确定为什么上面的方法不起作用。 不管怎样,多亏了之前有人建议这个答案。:)
我正在寻找一个运算符,它允许我检查字段的值是否包含某个字符串。 比如: 可能吗?
所以我一辈子也想不出来。我正在尝试编写一个程序,提示用户输入电话号码。这将作为字符串输入,并在稍后的程序中转换为整数数组。然而,我现在遇到的情况是验证用户输入的字符串是否仅限于!!!包含2-9之间的数字。我已经尝试了。Contains方法和。Match方法,但是使用这些方法总是提供错误的结果。如果有人能提供一些关于如何解决这个问题,我将非常感谢。提前感谢。 以下是我目前掌握的信息:
问题内容: 我想检查我的字符串是否包含+字符。我尝试了以下代码 但是它没有给出预期的结果。 问题答案: 您需要此: 类的方法不使用正则表达式作为参数,而是使用普通文本。 编辑: 输出: