我的复合声明如下:
for (int count = 0; count <= passLength; count++)
{
while( !(charGenerator >= 65 && charGenerator <= 90) || (charGenerator >= 97 && charGenerator <= 122))
{
charGenerator = randNum.nextInt(123);
}
System.out.print((char)charGenerator);
charGenerator = 0;
}
我在for循环中有它所以它会立刻生成许多数字,但我的问题是它永远不会在第二个范围内选择数字,换句话说我从来没有从97到122得到任何数字。它可以正常工作第一个范围。如何制作它以便从两个组中选择随机数?
答案 0 :(得分:5)
!
适用于||
的第一个字词,而不适用于整个表达式。添加一对括号:
while( !((charGenerator >= 65 && charGenerator <= 90) ||
(charGenerator >= 97 && charGenerator <= 122)) )