java怎么用if判断输入的是不是数字?
大概知道的简单的2种方式 public static void test(){ Scanner scn = new Scanner(System.in); int i = scn.nextInt();// 第一种方式,直接用nextInt方法,这样就限制了用户在控制台只能输入数字了 // 第二种,给用户输入字符串的操作 String s = scn.next(); while (true) { try { i = Integer.parseInt(s); break;// 假如强转成功,则终止循环 } catch (Exception e) { s = scn.next();//强转失败,继续输入 } } }
如何在java中用正则表达式验证一个字符串中是否包含连续的4位数字?
string regex content \\d \d '0' \\\\d \\d '\d' \\Q\\d\\E \Q\d\E '\d' 当你不想字符当作正则的功能字符时,可以用\Q \E包裹起来,那么内部就会被看做字符串。
java怎么验证用户名和密码?
可能LZ对使用浏览器进行用户名密码认证比较清楚SOCKET走的是TCP/IP协议,而浏览器方式走的是HTTP协议不管哪种方式,都是通过客户端程序上发到服务器端,而浏览器方式的通道都是默认OK的,而TCP方式则需要通过SOCKET来建立通道,传输的数据是通过报文格式,报文你可以理解是一串东东,这个东东可以是二进制,可以是十进制,可以是字符串对于进行用户名密码认证,你看成是字符串就行了根据客户端和服务端规定好的报文格式进行解析,验证的工作和HTTP协议的方式一样,简单来说就是放在servlet上进行。区别就是,SOCKET要自己建立连接以及自己制定报文格式,而浏览器方式只要通过request方式传送就OK了
用JAVA编写判断数是奇数还是偶数?
java 运算还是要学习的 我问你上面的 x/2==0 就断定为偶数 那么 x=4 怎么办
这种应该采用取模运算 x%2 。逻辑一定要经过推敲才会有好代码。希望回答对你有所帮助。
JAVA中,求输入一个正整数,判断其是否是一个完美数,用while循环怎么做最简洁?
求输入一个正整数,判断其是否是一个完美数,用while循环怎么做最简洁?
完美数概念
首先你得了解什么叫”完美数“。一个数如果恰好等于除其本身外所有因子之和,这个数就称为“完美数”。例如6=1+2+3.编程找出10000以内的所有完数。所以1不算,循环的话就得从1开始;
解题思路
从1开始至目标数减1进行循环,逐一去判断循环数是否为目标数的因子,若是,则加总至和,最后所有数都比较完,再对和和目标数进行相等判断,如果和等于目标数,则是完美数,否则不是;
实现
小编用C++的方式来实现,因为手边没有好的Java的IDE,就这个问题,主要牵涉到的就是循环逻辑处理,跟语言没多大关系,所以C++你也能看得懂。
while循环实现
int target_num = 6 ;//换成你要输入的数
int sum = 0 ;//用来累加因子的和
int i = 1 ;
while (i<target_num)
{
i++ ;
//判断i是否为目标数target_num 的因子 若是因子则目标是可以被整除
if(target_num%i == 0)sum+=i ;累积因子和
}
if(sum == target_num)cout<<"是完美数"<<endl;
else cout<<"不是完美数"<<endl;
for循环实现
int target_num = 6 ;//换成你要输入的数
int sum = 0 ;用来累加因子的和
for (int i = 1; i < target_num; i++)
{
//判断i是否为目标数target_num 的因子 若是因子则目标是可以被整除
if(target_num%i == 0)sum += i ;//累积因子和
}
if(sum == target_num)cout<<"是完美数"<<endl;
else cout<<"不是完美数"<<endl;
总结
其实完美数判断起来还是比较简单的,while循环在简洁和效率上都是不如for循环的。虽然你的问题是while怎么实现,但是建议用for循环。

