[英]How can I parse integers from a string in Java?
我需要从字符串中检索出两个int类型变量的分母和分母。 它可以是:“1 / -2”,“4/0”,“ - 2/1234”或“5”(在这种情况下,分母为1);
整数和“/”之间可能有空格,整数内没有空格。 并且字符串中可能只有一个整数而没有“/”。
有任何想法吗? 谢谢。
嗨,我结合了你们的家伙的答案,它的确有效! 谢谢!
s是字符串
s = s.trim();
String[] tokens = s.split("[ /]+");
int inputNumerator = Integer.parseInt(tokens[0]);
int inputDenominator = 1;
if (tokens.length != 1)
`inputDenominator = Integer.parseInt(tokens[1]);`
String[] parts = s.split(" */ *");
int num = Integer.parseInt(parts[0]),
den = Integer.parseInt(parts[1]);
使用'/'作为分隔符分隔字符串,然后删除所有空格。 之后使用Integer.parseInt();
要很好地删除空格,您可以尝试检查第一个字符串的最后一个字符串和第二个字符串的第一个字符串,将它们与''进行比较,如果匹配则删除它们。
希望这可以帮助..,
StringTokenizer st= new StringTokenizer(s, "/");
int inputDenominator,inputNumerator;
if(st.hasMoreTokens())
{
String string1= st.nextToken();
string1=string1.trim();
inputNumerator = Integer.parseInt(string1);
}
if(st.hasMoreTokens())
{
String string2= st.nextToken();
string2=string2.trim();
inputDenominator = Integer.parseInt(string2);
}
else{
inputDenominator=1;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.