eclipse选择对话框输入是IField [],但返回值是SourceFields的Object []

时间:2013-09-24 07:48:49

标签: eclipse dialog

我在eclipse(ListSelectionDialog)中显示一个选择对话框,输入是IField的列表(org.eclipse.jdt.core.IField)。列表没问题,选择也是,但是对话框的返回值只提供了一个对象列表(Object []),每个对象都是一个SourceField(org.eclipse.jdt.internal.core.SourceField)。

所以我的问题是: 我需要选择的字段作为IField,直接演员是不幸的答案。 :( 那么如何从SourceFields获得IField列表?

任何提示? 非常感谢! 斯文

1 个答案:

答案 0 :(得分:0)

SourceField实现了IField接口,因此您可以投射单个对象:

IField [] result = new IField[objectArray.length];
for (int i = 0; i < result.length; ++i) {
   result[i] = (IField)objectArray[i];
}