Java读取字符串并将字符串中的数字转换为整数类型
我试图从用户字符串(如果它有数字)中获取数字,并将这些数字转换为它们的数值。我有以下接收用户输入的代码 示例:Java读取字符串并将字符串中的数字转换为整数类型,java,Java,我试图从用户字符串(如果它有数字)中获取数字,并将这些数字转换为它们的数值。我有以下接收用户输入的代码 示例:java Convert“55s”将只输出数字55,我将存储该数字以供以后使用 { char Element = 0; double Sum = 0; boolean Check = false; for(String s: args) // taking in user input for command line
java Convert“55s”
将只输出数字55,我将存储该数字以供以后使用
{
char Element = 0;
double Sum = 0;
boolean Check = false;
for(String s: args) // taking in user input for command line
{
for (int i = 0; i<s.length(); i++)
{
Check = true;
Element = s.charAt(i); // converting the string into chars
Sum = convert_to_numb (Element, Check);
Check = false;
}
}
在这里,我输入字符以查看它们是否是数字,并将实际数字转换为它们的整数值。为了澄清,我想执行以下任务,给出一个输入“55”的示例,将其转换为5*10^1+5*10^0=55。我将感谢任何帮助。谢谢。好吧,我想我可能知道你想要完成什么,尽管正如其他人提到的,这有点不清楚 为了解决您刚刚发布的代码,我认为它不会按照您期望的方式运行。对于初学者来说,布尔变量“Check”目前没有任何作用。convert_to_numb仅在Check为true时调用,因此它是冗余的 此外,在循环字符串时,总和不会存储在任何位置。每次获得一个和时,它都会覆盖上一个和 你的“把你变成麻木”的方法更麻烦;它包含一个无限循环。由于Check总是设置为“true”,所以实际上有一个while(true)循环将永远不会结束
我假设您的目标是解析输入到程序中的字符串,查找连续数字组。然后,您希望将这些数字组存储为整数,如果您找到多个,则可能存储在一个数组中 像这样的事情可能会奏效
{
ArrayList discovered=新的ArrayList();
for(字符串s:args){
//包含以前的连续数字(如果有)
ArrayList位数=新的ArrayList();
对于(int i=0;i
请注意ArrayList以及整数和字符包装类的使用。这些都提供了有助于处理边缘情况的功能。例如,我不确定(iter-48)
部件在所有情况下都能工作。类似这样的内容:
public static void main(String[] args) {
String string = "55s";
String[] piece = string.split("[\\D]+");
for (int j = 0; j < piece.length; j++) {
if(piece[j].trim().length() > 0) {
System.out.println(piece[j]);
}
}
}
publicstaticvoidmain(字符串[]args){
String=“55s”;
String[]piece=String.split([\\D]+”);
对于(int j=0;j0){
系统输出打印LN(件号[j]);
}
}
}
它会分割你的初始字符串,剩下的你自己做。一个问题,如果字符串是
“foo55bar66bazz7”
你会存储什么?我想做的是创建一个小计算器,为了回答你的问题,我会知道等式是什么,因为这是一个硬件赋值,所以我会存储55,66,77分为主要的独立变量
public static void main(String[] args) {
String string = "55s";
String[] piece = string.split("[\\D]+");
for (int j = 0; j < piece.length; j++) {
if(piece[j].trim().length() > 0) {
System.out.println(piece[j]);
}
}
}