【问题标题】:Java- a constructer that analyzes a string a converts it into an intJava - 一个分析字符串并将其转换为 int 的构造函数
【发布时间】:2017-01-22 18:59:00
【问题描述】:

如何创建一个构造函数,该构造函数具有一个遍历或分析字符串的 for 循环。然后将字符串字符转换为整数,然后将其存储到数组列表中。例如,如果数字是“500”,它应该是 5 0 0,每个数字都是 arraylist 块。

这是我目前的代码;

import java.util.Scanner;
import java.util.ArrayList;

public class BigInt {

    private String BigInt;

    private boolean pos;
    private boolean neg;

    private ArrayList<Integer> bigNum = new ArrayList<Integer>();   
    public BigInt(String b1){   
        b1 = "";
        for(Integer num : bigNum){      
        }
        //in a for loop if integer put into the array list
    }
    public  boolean sign(boolean a, boolean b){
        a = false;
        b = true;
        return false;
    }
    public String toString(){
        //check if boolean is + or - set that as the first character in the string
        //if( string - == first character)
        return BigInt;
    }
}

【问题讨论】:

  • 更正我的意思是把它存储到一个数组列表中。
  • 你设置b1=""的目的是什么?
  • 我真的认为您需要在该循环的主体上投入更多的精力。这看起来像你老师给你的大纲。
  • 我们鼓励您编辑您的问题以包括任何更正。这样,我们无需阅读 cmets 即可了解您问题的完整背景。
  • 我制作了这个大纲,所以我可以有一些可以使用,而不是什么都没有。但是对于 for 循环,我不知道如何转换每个字符串字符并将其转换为 int。

标签: java string arraylist int


【解决方案1】:

您可以做的一件事是使用 / 和 % 来分解大量数字。 像这样的

while (a > 10) {
    arrayList.insert(0, a % 10)
    a /= 10;
}

【讨论】:

  • a 是已经转换为整数的原始数字,比如 500
  • 请在您的回答中包含这一点。
【解决方案2】:

也许是这样的?

int num, index;
num = Integer.parseInt(b1);
index = 0;

while (num >= 0)
{
    arrayList.insert(index, num % 10);
    num = num / 10;
    index = index + 1;
}

【讨论】:

    【解决方案3】:

    如何创建一个遍历或分析字符串的 for 循环。然后将字符串字符转换为整数

        int x = Integer.valueOf(BigInt);
    

    然后将其存储到数组列表中

        for (int i = 0; i < BigInt.length(); i++)
        {
            BigNum.add(BigInt.charAt(i) - '0');
        }
    

    【讨论】:

    • 我很抱歉忘记了这一点,但你如何在我的构造函数中实现它。非常感谢您花时间回答。
    • 您确实将该代码复制到您的构造函数中。也许您需要将BigInt = b1 指定为第一行。我不能为你做作业。
    猜你喜欢
    • 1970-01-01
    • 2013-11-03
    • 2023-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-10
    相关资源
    最近更新 更多