java从键盘上输入包含有整数和其他字符组成的一行字符串,求取其中最大的整数并判断它是否是素数。
时间: 2024-01-22 19:21:00 浏览: 73
可以按照以下步骤实现:
1. 从键盘读入一行字符串。
2. 从读入的字符串中提取所有整数,找到其中最大的一个整数。
3. 判断最大的整数是否是素数。
下面是一份可能的 Java 代码实现:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("请输入包含整数和其他字符的字符串:");
String str = sc.nextLine();
sc.close();
int maxNum = Integer.MIN_VALUE;
String[] nums = str.split("\\D+"); // 使用正则表达式提取所有整数
for (String num : nums) {
if (!num.isEmpty()) { // 忽略空字符串
int n = Integer.parseInt(num);
if (n > maxNum)
maxNum = n;
}
}
System.out.println("最大的整数是:" + maxNum);
if (isPrime(maxNum))
System.out.println(maxNum + " 是素数。");
else
System.out.println(maxNum + " 不是素数。");
}
// 判断一个数是否是素数
private static boolean isPrime(int n) {
if (n <= 1)
return false;
for (int i = 2; i <= Math.sqrt(n); i++) {
if (n % i == 0)
return false;
}
return true;
}
}
```
输入示例:
```
请输入包含整数和其他字符的字符串:abc123def4567hij8klmno9pqrst0uvw1234xyz
```
输出示例:
```
最大的整数是:4567
4567 不是素数。
```
阅读全文