Java 检查是否选择了多个项目
我是eclipse插件开发的新手。我编写了一个代码,可以获取选定的项目名称和路径。但如果选择了多个项目,则会列出第一个项目 这是我的密码Java 检查是否选择了多个项目,java,eclipse,eclipse-plugin,Java,Eclipse,Eclipse Plugin,我是eclipse插件开发的新手。我编写了一个代码,可以获取选定的项目名称和路径。但如果选择了多个项目,则会列出第一个项目 这是我的密码 IStructuredSelection selection = (IStructuredSelection) window.getSelectionService().getSelection(); Object firstElement = selection.getFirstElement(); if (firstElement != null) {
IStructuredSelection selection = (IStructuredSelection) window.getSelectionService().getSelection();
Object firstElement = selection.getFirstElement();
if (firstElement != null) {
if (firstElement instanceof IAdaptable) {
IProject project = (IProject) ((IAdaptable) firstElement).getAdapter(IProject.class);
IPath path = project.getFullPath();
IPath location = project.getLocation();
}
}
如何检查是否选择了多个项目?使用
selection.iterator
对所选项目进行迭代。可能是这样的
Iterator it = selection.iterator();
while(it.hasNext()){
Object firstElement = it.next();
if (firstElement != null) {
if (firstElement instanceof IAdaptable) {
IProject project = (IProject) ((IAdaptable) firstElement).getAdapter(IProject.class);
IPath path = project.getFullPath();
IPath location = project.getLocation();
}
}
}
编辑:更新了更详细的代码
合并您的逻辑以查看是否选择了单个或多个项目。使用计数器检查选择的项目数 它会导致无限循环,您可以查看迭代器(it)的大小并得出结论。希望您正在使用“instanceOf IAdaptable”检查是否选择了多个项目。您必须在循环中调用“it.next()”才能移动到每个新项目。