基本上,我有一个文件,其中有几行与此类似的数字:
4450 137
123679 5886
5448103 548913
我正在编写一个程序来获取每个数字,将其每个整数分开,将它们放入双向链表中,然后将它们相加。
我遇到的问题是,我不确定如何获取第一行,分隔第一个数字中的数字,然后分隔第二个数字中的数字,对它们执行我需要的操作,然后返回并对第二行执行相同操作,依此类推。输出如下:
4450 + 137 = 4587
123679 + 5886 = 129565
...等等。
到目前为止,我已经...
Scanner scan = new Scanner(new File("input.txt"));
int num1;
int num2;
while (scan.hasNext()) // While there are still things to scan
{
num = scan.nextInt();
while(num%10 !== 0)
{
tempNum = num % 10;
linkList.add(tempNum);
num = num/10;
}
}
感谢任何帮助!
最佳答案
我的思考过程是这样的:
- 从扫描仪中获取一个整数
- 输入一个循环来提取每个数字
- 将每个数字放入您的列表中
- 继续执行此操作,直到用完数字
- 从扫描仪中获取下一个整数
如何提取每个数字?
如果您的号码是 12305,那么您可以通过执行 12305 % 10
去掉 5,这将返回 5。然后您通过执行 12305/10 (= 1230) 丢弃该 5,并且存储该结果以供下次循环时使用。
如何知道数字已用完?
如果您存储的数字/10 给出零,那么您就完成了该整数。
内循环示例:
while(num != 0) {
singleDigit = num % 10;
...
num = num / 10;
}
关于java - 如何扫描由空格分隔的一行 2 个数字并将每个数字的每个数字分配给一个 int?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29202769/