Удалить элементы из TreeViewer на основе суффикса строки (элементы списка)

У меня есть TreeViewer и список внутри TreeViewer, содержащий список элементов (строка), например:

Подзадача один один \\ первый элемент в TreeViewer

Подзадача два один

Подзадача три один

Подзадача четыре два

Подзадача четыре три

Я хочу удалить элементы из TreeViewer с суффиксом «один» и оставить остальные элементы. Как мне перебрать элементы и удалить элементы, имя которых заканчивается строкой «один»?

Образец кода :

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);

Кто-нибудь, пожалуйста, помогите мне как можно скорее. Пожалуйста.

Перед настройкой ввода Tree Viewer я хочу перебрать список и удалить только элементы, имя которых заканчивается строкой «один» (элементы с суффиксом «один»)? После удаления элементов из списка я бы установил ввод treeViewer.

Есть ли способ удалить элементы, имя которых заканчивается строкой «один»? Как мне это сделать? Я застрял здесь, пожалуйста, кто-нибудь, пожалуйста, подскажите, как действовать дальше?

Заранее спасибо.


person user3652212    schedule 23.06.2014    source источник
comment
Посмотрите на String.endsWith   -  person greg-449    schedule 24.06.2014


Ответы (1)


Предполагая, что getItems() дает мне список объектов 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