Java中的子字符串数组
我有一个场景,我有一个数字串Java中的子字符串数组,java,string,Java,String,我有一个场景,我有一个数字串 String Lastnum = "123456789500020" 预期结果firstnum=1234567895secnum=00020 00030 00040 我需要将其拆分为两个字符串: 首先用于收集10位数字和 第二秒 这里的问题是,第二个数字总是动态的,不确定它是两位数还是五位数,第二个数字应该是字符串数组。请告诉我如何处理代码 for (int i=0; i<Lastnum.length();i++) { String ponum =
String Lastnum = "123456789500020"
预期结果firstnum=1234567895
secnum=00020 00030 00040
我需要将其拆分为两个字符串:
for (int i=0; i<Lastnum.length();i++)
{
String ponum = Lastnum.substring(0,10);
String[] item = Lastnum.substring(11, (Lastnum -ponum));
}
for(int i=0;i如果字符串的第二部分类似于secnum
,即用空格分隔,则可以执行以下操作:
String ponum = lastnum.substring(0,10);
String[] item = lastnum.substring(10).split(" ");
我不知道为什么要为
循环添加,它只是重复相同的计算序列lastnum.length()
次
另外,请注意,我将变量lastnum
更改为以小写字母开头,以符合Java的命名约定。有关sec编号的部分并不完全清楚。动态是什么意思
反正,
那么:
String ponum = Lastnum.substring(0,10);
String sec = Lastnum.substring(10);
首先?
我不明白为什么你需要一个秒字符串数组。第一项中的字符串应该是什么?第二项中的字符串应该是什么
String Lastnum = "123456789500020"
String firstNumber = Lastnum.substring(0,10);
String secondNumber = Lastnum.substring(10, Lastnum.length());
上面的代码将获取字符串中从索引0开始的前10(0…9)个字符,并将其分配给“firstNumber”。然后,它将获取其余字符,索引(10…Lastnum-1的长度)
如果您得到如下输入:String Lastnum=“123456789500020 00030 00040”
并返回前10位数字[1234567895],再加上剩余数字的数组(用空格表示)
这与第一个结果的作用基本相同,但进一步将字符串的末尾拆分为空格
结果将是
ponum="1234567895"
remainingNumbers={"00020", "00030", "00040"}
在任何一种情况下,都没有理由循环字符串…我认为您正在尝试无限次地打印secnum
,并在其每个成员之间添加一个空格。您可以尝试以下操作:
for(int i=0;;i++)
{
ponum = lastnum.substring(0,10);
item[i] = lastnum.substring(10)+" ";
}
在您的示例结果中,00030 00040来自何处?这些数字似乎不在您的输入中。很抱歉造成混淆,这里是输入38000001200010读取下一个38000001200020读取下一个我定义了一个while循环来读取此结果,因此现在我只有一个po 3800000123和两个行项目00020和00030,因此我需要发送所有不同采购订单的采购订单和行项目数组。希望您理解…非常感谢您在这方面的帮助这从来都不是一个好主意。无限循环不间断?这将使程序崩溃!非常感谢您的快速响应,但我始终会得到15位数字的完整字符串是采购订单+项目编号,其中包括收集项目。如123456789500020、123456789500030等。我需要将10位数字和项目数组分开,因为一个采购订单有许多行项目。请帮助我?
for(int i=0;;i++)
{
ponum = lastnum.substring(0,10);
item[i] = lastnum.substring(10)+" ";
}