我正在尝试编写一个类,该类将用户输入的电话号码作为字符串,然后将每个数字存储在一个数组中。我使用 Long.parseLong 将字符串转换为 long。这是应该将每个单独的数字存储在数组中的函数。
public void storetoarray()
//Turn the strings to longs
//A loop chops of the last digit and stores in an array
{
phonelong = Long.parseLong(initialphone);
phonetemp1 = phonelong;
for (int i = phonelength; i>=0; i--)
{
phonearray[i-1] = phonetemp1%10;
phonetemp2 = phonetemp1 - phonetemp1%10;
phonetemp1 = phonetemp2/10;
System.out.print("Phone temp 2" + phonetemp2 + phonetemp1);
}
}
该循环的逻辑是使用 %10 找到电话号码的最后一位,然后从原始电话号码中减去该号码。然后将新的差异设置为 phonetemp1/10。
示例 4158884532%10 = 2。它存储在 phonearray[9] 中。然后减去 phonetemp2 得到 4158884530。除以 10 得到 415888453。应该准备好存储下一个数字。
出了什么问题?谢谢您的帮助!