【问题标题】:Divide String by StringTokenizer and then save to 2 arrays将String除以StringTokenizer,然后保存到2个数组
【发布时间】:2013-12-09 14:45:04
【问题描述】:

想象一下这个数组。

data[0] : 208.92.249.53:80
data[1] : 115.124.65.74:3128
data[2] : 49.213.17.92:8080

我想拆分数据[]。并提取ip和端口号。

ip[0] : 208.92.249.53
ip[1] : 115.124.65.74
ip[2] : 49.213.17.92
port[0] : 80
port[1] : 3128
port[2] : 8080

我该怎么做?

StringTokenizer stringTokenizer = new StringTokenizer(data[i], ":");
while (stringTokenizer.hasMoreTokens()){
        //??????
}

我不知道如何保存到 2 个不同的数组。请让我展示如何做到这一点...谢谢!

【问题讨论】:

    标签: java arrays stringtokenizer


    【解决方案1】:
    String[] ip = new String[data.length];
    String[] port = new String[data.length];
    
    for (int i=0;i<data.length;i++) {
       String[] split = data[i].split(":");
       ip[i] = split[0];
       port[i] = split[1];
    }
    

    【讨论】:

      【解决方案2】:

      StringTokenizer 不推荐使用 array.split() 代替。

      String[] tmp = data[i].split(":");
      ip[i] = tmp[0];
      port[i] = tmp[1];
      

      【讨论】:

        【解决方案3】:

        试试,

        for(int i=0;i<data.length;i++){
        StringTokenizer stringTokenizer = new StringTokenizer(data[i], ":");
        
          while (stringTokenizer.hasMoreTokens()) {
             ip[i]=stringTokenizer.nextToken();
             port[i]=stringTokenizer.nextToken();
        
          }
        }
        

        【讨论】:

          【解决方案4】:
          String[] arrTokens =data[0].split(":");
          
          【解决方案5】:

          也许 StringTokenizer 不是你想要的。你可以通过split 命令来做到这一点

          String[] ip = new String[data.length];
          String[] port = new String[data.length];
          for (int i = 0; i < data.length; i++)
          {
             String[] splitted = data[i].split(":");
             ip[i] = splitted[0];
             port[i] = splitted[1];
          }
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2015-04-21
            • 1970-01-01
            • 1970-01-01
            • 2018-08-13
            • 1970-01-01
            相关资源
            最近更新 更多