如何扫描一行由 space 分隔的 2 个数字并将每个数字的每个数字分配给一个 int?
How to scan a line of 2 numbers separated by a space and assign each digit of each number to an int?
基本上,我有一个文件,其中包含几行与此类似的数字:
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 给你零,那么你就完成了那个 int。
内循环示例:
while(num != 0) {
singleDigit = num % 10;
...
num = num / 10;
}
基本上,我有一个文件,其中包含几行与此类似的数字:
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 给你零,那么你就完成了那个 int。
内循环示例:
while(num != 0) {
singleDigit = num % 10;
...
num = num / 10;
}