使用java中字符串的条件拆分到数组中

时间:2014-04-07 16:40:53

标签: java string arraylist split

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个数字。

我的意思是,如果第3个#之后的数字是1,它应该显示第一个#前面的前10个数字

如果数字为2,则也会显示前10位数字。

1或2解释了帐户中的货币,因此我想在同一个组合框中显示1的所有帐户,然后在同一个组合框中显示2的所有帐户。 (前10位是帐号)。

而不是显示所有这些。

请帮助我,明天我将使用java提供迷你银行应用程序。

1 个答案:

答案 0 :(得分:0)

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++;
    }

}