本文目录一览:
如何用JAVA检测一个数字的每一位的和,是否是完美数
Java源代码:
import java.util.Scanner;
public class Exam01 {
public static void main(String[] args) {
int num;
System.out.print("请输入一个正整数:");
Scanner scan = new Scanner(System.in);
num = scan.nextInt();
if(perfectNumber(num) == true){
System.out.printf("%d 是一个完美数", num);
}
else{
System.out.printf("%d 不是一个完美数", num);
}
}
/**
* 判断num是否是完美数(各位数字之和恰好是完全数)
* @param num 待判断数
* @return true-完美数,false-非完美数
*/
public static boolean perfectNumber(int num){
int sum = 0;
//求num的各位数字之和
while(num 0){
sum += num % 10;
num /= 10;
}
return completeNumber(sum);
}
/**
* 判断num是否是完全数(所有小于自身的因子之和恰好等于其自身的正整数)
* @param num 待判断数
* @return true-完全数,false-非完全数
*/
public static boolean completeNumber(int num){
if(num = 1){
return false;
}
int sum = 1;
//求小于num的所有因子之和
for(int i=2; inum; i++){
if(num % i == 0){
sum += i;
}
}
return (sum == num ? true : false);
}
}
运行测试:
请输入一个正整数:600
600 是一个完美数
请输入一个正整数:64
64 不是一个完美数
如何用Java正则表达式检测字符串是否是数字组成的
1,正则表达式概念介绍(内容来自百度百科):正则表达式,又称规则表达式,英文名为Regular Expression,在代码中常简写为regex、regexp或RE,是计算机科学的一个概念。
正则表通常被用来检索、替换那些符合某个模式(规则)的文本。正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,模式描述在搜索文本时要匹配的一个或多个字符串。
2,检测字符串是否由数字组成,则采用该表达式:
public static void main(String[] args) {
// 要验证的字符串
String str = "service@xsoftlab.net";
// 是否数字正则表达式
String regEx = "^[0-9]*$";
// 编译正则表达式
Pattern pattern = Pattern.compile(regEx);
// 忽略大小写的写法
Matcher matcher = pattern.matcher(str);
// 字符串是否与正则表达式相匹配
boolean rs = matcher.matches();
// 如果为数字,则输出true,反之false,即可用该变量做条件判断
System.out.println(rs);
}
在Java中,如何检测一个数组中是否包含某一个数据?
可以使用如下的代码:
Arrays.asList(yourArray).contains(yourValue)
但这并不适用于基本数据类型的数组。
在Java8之后,你可以使用Stream来检测int,double,long类型的数组是否包含某个数值。(分别用IntStream,
DoubleStream和LongStream),例如:
int[]
a
=
{1,2,3,4};
boolean
contains
=
IntStream.of(a).anyMatch(x
-
x
==
4);
对于数组的一些操作,你可以上秒秒学了解相关的知识。