将 System.List<string> 转换为 Java.Lang.String[]
Posted
技术标签:
【中文标题】将 System.List<string> 转换为 Java.Lang.String[]【英文标题】:Convert System.List<string> to Java.Lang.String[] 【发布时间】:2012-09-30 15:13:21 【问题描述】:我正忙着用 Visual Studio 编写一个单声道的 android 应用程序。我正忙于在我的自定义适配器上实现 ISectionIndexer
。
我正在努力将 System.List<string>
转换为 Java.Lang.String[]
。不知道有没有可能?!
一些示例代码:
private List<string> _sections;
public Java.Lang.Object[] GetSections()
return this._sections.ToArray(); // Cannot implicitly convert type 'string[]' to 'Java.Lang.Object[]'
如果可能的话,有人可以协助转换吗? 非常感谢!
【问题讨论】:
不太确定android,但您的列表中有.ToArray()
方法吗?
也许你可以给我们一个你尝试过的样本,它看起来有点奇怪......
viralpatel.net/blogs/convert-arraylist-to-arrays-in-java
@Habib:您好,这不起作用。它给出了一个错误:无法将类型“string[]”隐式转换为“Java.Lang.Object[]”。感谢您的回复。
@Waqas:感谢您的回复,但我不确定该转换将如何解决问题?!
【参考方案1】:
这个怎么样?
public Java.Lang.Object[] GetSections()
return new Java.Util.ArrayList(this._sections).ToArray();
【讨论】:
【参考方案2】:我用下面的方法解决了这个问题,不是很漂亮,但是很管用!
public Java.Lang.Object[] GetSections()
Java.Lang.String[] tmpObjCollection = new Java.Lang.String[this._sections.Count];
for (int i = 0; i < this._sections.Count; i++)
tmpObjCollection[i] = new Java.Lang.String(this._sections[i]);
return tmpObjCollection;
【讨论】:
亲爱的 Richard,java.lang.String 是 IVKM.net 中的一个静态类。因此不能声明或实例化。以上是关于将 System.List<string> 转换为 Java.Lang.String[]的主要内容,如果未能解决你的问题,请参考以下文章
使用点分隔符将 List 转换为 String 到 Map<String, Object>
参数类型 'List<Series<dynamic, dynamic>>' 不能分配给参数类型 'List<Series<dynamic, String>&g