【问题标题】:Get data as Array, Java using StringTokenizer使用 StringTokenizer 以数组形式获取数据,Java
【发布时间】:2015-05-04 03:22:55
【问题描述】:

所以我有以下代码

        StringTokenizer st = new StringTokenizer(sb.toString());
        while (st.hasMoreElements()) 
        {
            String next = st.nextElement().toString();
            int nextInt = Integer.parseInt(next);
            agents = Integer.parseInt(next);
            pass = Integer.parseInt(next);
            TSA[] agentArr = new TSA[agents];
            for(int i; i < agents; i++)
            {
                agentArr[i] = new TSA(next,next,nextInt,nextInt,nextInt,nextInt,nextInt,nextInt,nextInt,nextInt,nextInt);
            }               
        }

现在这适用于我正在做的事情,因为我只期望从文件中读取固定数量的 nextInt。但是我意识到我必须从两条未知长度的单独行中读取未知数量。我无法弄清楚如何使用 StringTokenizer 执行此操作,理想情况下我可以检查何时出现新行并将下一个令牌作为数组但无法执行此操作。有任何想法吗? 我也知道 String Tokenizer 已被弃用,并不是最好的方法。我对使用其他方式持开放态度,但仍然无法使其发挥作用。

【问题讨论】:

    标签: java arrays stringtokenizer


    【解决方案1】:

    Java 数组是固定大小的,但您可以使用ArrayList 类。它将数据存储在数组中,一旦填充,它会创建更大的数组并将数据复制到那里。因此你不应该关心大小,你可以添加元素。如果你想在完成后将其转换回简单数组,只需使用toArray()方法即可。

    【讨论】:

    • 我打算实现一个 ArrayList 但知道数组的大小不是我的问题,我遇到的问题是我不知道我应该存储多少整数,所以我不知道何时停止存储它们,何时将它们拆分为两个单独的数组
    猜你喜欢
    • 1970-01-01
    • 2021-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-27
    • 1970-01-01
    • 1970-01-01
    • 2018-05-19
    相关资源
    最近更新 更多