2016-12-06 75 views
-1

我有一个数据集。数据的子集;通过查询为ArrayList或字符串检索特定值

1 clueweb09-en0003-55-31884 0 
1 clueweb09-en0006-21-20387 0 
1 clueweb09-enwp01-75-20596 1 
1 clueweb09-enwp00-64-03709 1 
1 clueweb09-en0005-76-03988 0 
2 clueweb09-en0011-28-14585 0 
2 clueweb09-en0011-89-08538 1 
2 clueweb09-en0004-65-01093 0 
2 clueweb09-en0001-41-26637 0 
2 clueweb09-enwp00-29-10792 0 
2 clueweb09-enwp03-38-18865 0 

它们都是字符串值。我只想工作,例如,第一列= 1。之后它是否在列2中具有值“clueweb09-en0006-21-20387”?

我不能我使用的String []为每一行和ArrayList这些3列等的第一个字符对它们进行比较==“1”,因为该数据集具有10,11甚至100

有没有一种实用的方法来检索这些特定的值?或者做这种手术的最佳方式是什么?提前致谢。

+2

你必须在每一行字符串数组正确?因此,使用['String.split()'](http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#split(java.lang.String))来分割无论您想要使用哪一行 – rafid059

+1

如果所有行都看起来像'1 clueweb09-en0003-55-31884 0',并且是字符串为什么不在空间上分割''并取第二个元素。或者,如果列的宽度在所有行中都一致,则可以使用基于开始和结束位置的子字符串。 – mba12

+0

谢谢你们,但是,我知道如何拆分和采取专栏。我的问题是,有没有像'WHERE firstcolumn = 1 AND secondcolumn ='clueweb09-en0006-21-20387'? – Jungleman

回答

1

您可以通过从阵列中, 每串每串迭代,拆分它的基础上“”从而用生成的索引使用列..如:

String a = "11 clueweb09-en0003-55-31884 0"; 
    String[] a1=a.split(" "); 
    System.out.println(a1[1]);//to extract 2nd column 
    System.out.println(a1[0]);// to extract 1st column 
+0

谢谢你的回答,但那不是我的问题。事实上,我知道如何分裂和采取专栏。问题是,我可以像'WHERE firstcolumn = 1 AND secondcolumn ='clueweb09-en0006-21-20387'那样​​检索行吗? – Jungleman