我在 Java 和 Android 方面相当缺乏经验。我正在尝试检索存储在 android 手机模拟器的联系人之一中的电话号码。虽然我成功获取它,但该数字已以字符串的形式返回,格式为“(987)654-3210”。我想将其转换为整数或长整数。我怎样才能做到这一点?如果我使用Integer.parseInt(String number)
,它会返回一个NumberFormatException
. 也尝试使用失败Long.valueOf(String number)
。那我该怎么办?我希望它像“9876543210”,没有任何大括号或连字符。
问问题
6908 次
2 回答
8
使用long
for storage number会更好
String str="(987) 654-3210";
String stt=str.replaceAll("\\D+","");
long num= Long.parseLong(stt);
System.out.println(num);
于 2013-06-27T03:59:50.137 回答
6
这应该很简单。您可以在 java 中使用正则表达式来执行此操作,如下所示
phoneStr = str.replaceAll("\\D+","");
这将从字符串中删除非数字并只给你数字。然后你可以使用
int number = Integer.parseInt(phoneStr);
于 2013-06-27T03:42:32.570 回答