根据列将getString结果拆分为多个值

时间:2013-01-24 22:28:15

标签: java jsp getstring

<%
  st = con.createStatement();
  rs = st.executeQuery("select pf_nm from portfolio");

  while(rs.next())
  {
    out.print(rs.getString(1)); //divide the result into multiple values
  }
 %>

上述代码中的结果可能会根据提取的数据而有所不同。结果示例如下:

Google Facebook
or
Google
or 
Google Facebook Apple

1 个答案:

答案 0 :(得分:1)

如果我理解你的问题并正确评论那么你可以做这样的事情

ArrayList<String> cols = new ArrayList<String>();
while(rs.next())
  {
    cols.add(rs.getString(1));
    // Do something..
  }

修改:我从您之前的问题中了解到的内容

String result = rs.getString(1); // gives "Google Facebook Apple AT&T" as result
String[] names = result.split("\\s"); // Split the line by whitespace

如果你想要你也可以使用ArrayList。如果你需要键值关联,你也可以使用hashMap(我不确定你想要的是什么)。以下是一些有用的链接

1. Splitting string in java

2. How to use ArrayList in Java

3. HashMap example in Java

这是完整的伪代码。

public class StringSplit {

    public static void main(String [] sm){
        String str = "Google Facebook Apple AT&T";
        // If you have more than one whitespace then better use \\s+
        String[] names = str.split("\\s");
        for(int i =0; i<names.length; i++){
            System.out.println(i +" : " + names[i]);
        }
    }
}

我希望这会对你有所帮助。