java判断字符串是否为int long float double
时间: 2023-11-01 21:17:55 浏览: 287
可以使用Java中的正则表达式来判断一个字符串是否为int、long、float或double类型。例如:
```java
public static boolean isInt(String str) {
return str.matches("^-?\\d+$");
}
public static boolean isLong(String str) {
return str.matches("^-?\\d+$");
}
public static boolean isFloat(String str) {
return str.matches("^-?\\d+(\\.\\d+)?f?$");
}
public static boolean isDouble(String str) {
return str.matches("^-?\\d+(\\.\\d+)?$");
}
```
这里使用了Java中的String.matches方法来判断字符串是否符合正则表达式。对于int和long类型,正则表达式为"^-\?\\d+$",表示以可选的负号开头,后面跟着一串数字,整个字符串以结尾;对于float类型,正则表达式为"^-\?\\d+(\\.\\d+)?f?$",表示以可选的负号开头,后面跟着一串数字,可能包含一个小数点和更多数字,最后可以以可选的f结尾;对于double类型,正则表达式为"^-\?\\d+(\\.\\d+)?$",表示以可选的负号开头,后面跟着一串数字,可能包含一个小数点和更多数字,整个字符串以结尾。
相关问题
java判断是否为int long float double
可以使用Java中的instanceof运算符来判断一个变量是否为int、long、float或double类型。例如:
```java
Object obj = 10;
if (obj instanceof Integer) {
System.out.println("obj是int类型");
} else if (obj instanceof Long) {
System.out.println("obj是long类型");
} else if (obj instanceof Float) {
System.out.println("obj是float类型");
} else if (obj instanceof Double) {
System.out.println("obj是double类型");
} else {
System.out.println("obj不是int、long、float或double类型");
}
```
注意,这里将变量obj声明为Object类型,而不是具体的int、long、float或double类型。这是因为Java中的所有基本类型都有对应的包装类,例如Integer、Long、Float和Double,它们都是Object的子类,因此可以统一使用Object类型来表示这些基本类型的变量。
判断字符串是int、long、flat、double
在 Java 中,可以使用正则表达式来判断一个字符串是否表示一个整数、长整数、浮点数或双精度浮点数。下面是使用正则表达式进行判断的示例代码:
```java
public class StringChecker {
public static boolean isInteger(String str) {
return str.matches("^-?\\d+$");
}
public static boolean isLong(String str) {
return str.matches("^-?\\d+$");
}
public static boolean isFloat(String str) {
return str.matches("^-?\\d+\\.\\d+$");
}
public static boolean isDouble(String str) {
return str.matches("^-?\\d+\\.\\d+$");
}
}
```
在上面的代码中,我们使用了正则表达式来匹配字符串。其中,"^" 表示字符串的开头,"$" 表示字符串的结尾,"?" 表示可选的负号,"\d" 表示数字字符,"+" 表示一个或多个,"\." 表示小数点。通过调用这些方法并传入一个字符串作为参数,可以判断该字符串是否表示一个整数、长整数、浮点数或双精度浮点数。
阅读全文