gpt4 book ai didi

java - 可以在 if 条件中使用多个 "logical and"和 "logical or"吗?

转载 作者:行者123 更新时间:2023-12-01 07:21:02 29 4
gpt4 key购买 nike

我试图让一个方法仅在 unicode 字符的 char 值是数字、大写字母或小写字母时才采取操作。

if ((48<=msg[i]&&msg[i]>=57)||(65<=msg[i]&&msg[i]>=90)||(97<=msg[i]&&msg[i]>=122) // only if numeral or alphabet   
{
System.out.print("PASS");
}

(为了简化起见,我已将操作更改为显示“PASS”。)这不起作用,因为我输入了 ?字符并获得“PASS”。我似乎对如何使用这些运算符的理解不正确。我怎么错了?我如何实现我在这里想做的事情?

最佳答案

反转关系运算符。 >=<=在第二个条件下。

if ((48<=msg[i]&&msg[i]<=57)||(65<=msg[i]&&msg[i]<=90)||(97<=msg[i]&&msg[i]<=122)  

(48<=msg[i]&&msg[i]>=57)如果 msg[i] 则表示“通过”是 >= 48 和 >= 57 即如果只是 >= 57.

如果您不想检查 ASCII 代码,请尝试使用。

isLetterOrDigit()Character类(class)。

使用正则表达式。

if((""+msg[i]).matches("^[A-Za-z0-9]$"))

关于java - 可以在 if 条件中使用多个 "logical and"和 "logical or"吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37853116/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com