用java编写判断一个字符串是否只包含数字运用character.isDigit方法
时间: 2024-03-20 18:44:57 浏览: 27
是的,除了使用正则表达式,还可以使用Java中的`Character.isDigit`方法来判断一个字符串是否只包含数字。具体实现代码如下:
```java
public static boolean isNumeric(String str) {
if (str == null || str.length() == 0) {
return false;
}
// 判断每个字符是否为数字
for (int i = 0; i < str.length(); i++) {
if (!Character.isDigit(str.charAt(i))) {
return false;
}
}
return true;
}
```
在上述代码中,`Character.isDigit`方法会判断给定字符是否为数字,如果是数字则返回`true`,否则返回`false`。因此我们可以遍历输入字符串中的每个字符,判断是否都为数字。如果有任何一个字符不是数字,则说明该字符串不只包含数字,返回`false`,否则返回`true`。
相关问题
用Java编写程序实现输入一个数字串,提取该字符串中的数字并输出,并累计求和
好的,这个问题很简单,可以使用 Java 的字符串处理函数来实现。
以下是一个示例代码,可以实现输入一个数字串,提取该字符串中的数字并输出,并累计求和:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine(); // 输入数字串
int sum = 0; // 用于累计求和的变量
for (int i = 0; i < input.length(); i++) {
char c = input.charAt(i);
if (Character.isDigit(c)) {
int num = Character.getNumericValue(c);
System.out.print(num + " "); // 输出数字
sum += num; // 累加求和
}
}
System.out.println("\n总和为:" + sum);
}
}
```
你可以输入一串数字,程序会输出这串数字中的每个数字并求和。
编写java程序,提示用户输入一个字符串书号,检查该书号是否合法
以下是一个可能的实现:
```java
import java.util.Scanner;
public class BookNumberValidator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入书号:");
String bookNumber = scanner.nextLine();
if (isValidBookNumber(bookNumber)) {
System.out.println("该书号合法");
} else {
System.out.println("该书号非法");
}
}
private static boolean isValidBookNumber(String bookNumber) {
// 书号应该由10位数字和一个字母组成
if (bookNumber.length() != 11) {
return false;
}
for (int i = 0; i < 10; i++) {
if (!Character.isDigit(bookNumber.charAt(i))) {
return false;
}
}
if (!Character.isLetter(bookNumber.charAt(10))) {
return false;
}
return true;
}
}
```
上面的程序中,首先提示用户输入一个字符串书号,然后调用 `isValidBookNumber` 方法检查该书号是否合法。这个方法首先判断书号长度是否为11,然后检查前10位是否都是数字,最后检查最后一位是否是字母。如果都符合要求,就返回 `true`,否则返回 `false`。