Hapus item dari TreeViewer berdasarkan akhiran string (Daftar item)

Saya memiliki TreeViewer dan Daftar di dalam TreeViewer yang berisi daftar item (String), misalnya:

Subtugas satu \\item pertama di TreeViewer

Subtugas dua satu

Subtugas tiga satu

Subtugas empat dua

Subtugas empat tiga

Saya ingin menghapus item dari TreeViewer dengan akhiran "satu" dan meninggalkan item lainnya. Bagaimana cara saya mengulangi item dan menghapus item yang namanya diakhiri dengan string "satu"?

Kode sampel :

TreeViewer treeViewer = new TreeViewer(moverComposite, SWT.BORDER | SWT.MULTI);
treeViewer.setContentProvider(new TreeContentProvider());
treeViewer.setLabelProvider(new LabelProvider());
GridData gridData = new GridData(SWT.DEFAULT, SWT.FILL, false, true);
gridData.widthHint = 215;
treeViewer.getControl().setLayoutData(gridData);
List listItems = new ArrayList();
listItems.addAll(getItems());
//This line I would want to iterate through the list and remove the list items whose names end with the string "one".
treeViewer.setInput(listItems);

Seseorang tolong bantu saya di sini secepatnya, Tolong.

Sebelum mengatur input Penampil Pohon, saya ingin mengulangi Daftar dan menghapus hanya item yang namanya diakhiri dengan string "satu" (item dengan akhiran "satu")? Setelah menghapus item dari daftar saya akan mengatur input treeViewer.

Apakah ada cara untuk menghapus item yang namanya diakhiri dengan string "satu"? Bagaimana saya melakukan ini? Saya terjebak di sini, tolong seseorang tolong sarankan bagaimana melanjutkannya?

Terima kasih sebelumnya.


person user3652212    schedule 23.06.2014    source sumber
comment
Lihatlah String.endsWith   -  person greg-449    schedule 24.06.2014


Jawaban (1)


Dengan asumsi getItems() memberi saya daftar objek Item,

List<Item> listItems = new ArrayList<Item>();
foreach(Item item : getItems()){
  if(!item.getName().endsWith("one")){
     listItems.add(item);
   }
  }
treeViewer.setInput(listItems);
person Subhankar    schedule 25.06.2014