String numbers = "0020020074#223#522620#1#9#0:0024202968#223#522620#1#59#0:0024039694#223#522620#1#1282#0:0024378742#223#522620#2#51#0"
请我是Java新手,我已尝试根据条件对此进行拆分。
我已经在每列(:)之后成功拆分了它们。但我只需要根据第三个#之后的数字获取前10个数字。
我的意思是,如果第三个#之后的数字是1,则应该在第一个#之前显示前10位数字
如果数字为2,则也显示前10位数字。
1或2解释了帐户中的货币,因此我想在同一组合框中显示所有带有1的帐户,然后在同一组合框中显示带有2的所有帐户。 (前10位数字是帐号)。
而不是全部显示。
请帮助我,明天我将使用Java交付我的迷你银行应用程序。
最佳答案
public static void main(String[] args) {
String numbers = "0020020074#223#522620#1#9#0:" +
"0024202968#223#522620#1#59#0:" +
"0024039694#226#522620#3#1282#0:" +
"0024378742#223#522620#2#51#0";
String[] nums = numbers.split(":");
int i = 0;
while(i < nums.length){
if(nums[i].split("#")[3].charAt(0) == '1')
System.out.println(nums[i].split("#")[0]);
else if(nums[i].split("#")[3].charAt(0) == '2')
System.out.println(nums[i].split("#")[0]);
else
System.out.println(nums[i].split("#")[1]);
i++;
}
}