2014-03-05 82 views
-2

對於算法的實現,我需要從列表中刪除一個特定的值。如何從列表中刪除特定的東西?

例如:---

我的列表:---

 Ist row->4,7,3,4 

    IInd row->2,8,6,5 

    IIIrd row->3,5,1,7 

之前刪除一些價值觀,我需要梳理it.That是,

 Collections.sort(list); 

已分類的結果

 2,8,6,5 

    3,5,1,7 

    4,7,3,4 

預期的輸出 現在我需要刪除所有行的第一個元素。輸出是

 8,6,5 

    5,1,7 

    7,3,4 

我是怎麼做到的???我通過使用tokenizer方法嘗試了它,但我沒有得到它。

+0

您使用哪種數據結構行? –

+1

你也許正在尋找這樣的東西? http://stackoverflow.com/questions/8452672/java-howto-arraylist-push-pop-shift-and-unshift –

+0

每一行實際上是一個字符串。 – Dahlia

回答

2

可以從一個java.util.List與

myList.remove(0); 

移除第一元件爲了消除從一個字符串,使用第一空格分隔單詞(或編號):

s = s.substring((s.indexOf(" ") + 1), s.length()); 

請注意,如果字符串爲空或不包含空格,則這將失敗。

可以防止這種情況的

if(str == null || str.indexOf(" ") != -1) { 
    throw new IllegalArgumentException("str (" + str + ") must be non-null, and must contain a space."); 
} 
//Safe! 
str = str.substring((str.indexOf(" ") + 1), str.length()); 
+0

它正在刪除Ist行。我需要從行中刪除特定的值,而不是整行。 – Dahlia

+0

我已經更新了我的答案。這回答了你的問題了嗎? – aliteralmind

+0

謝謝...但如果字符串爲空。該怎麼辦? – Dahlia

1

你只是刪除列表項在零位...... 像這樣

ListVariable.remove(0); 

對於每一個第一個元素是指用於循環.. 。 只需獲得行...

for(int i =0 ; i<ListVariable.size() ; i+4) 
{ 
     ListVariable.remove(i); 
}