java - 需要帮助将代码片段从 java 翻译为等效的 C#

标签 java c# arraylist xamarin code-translation

这是我想要从 Java 转换为 C# 的代码片段。我不确定是什么导致了错误,但我以前从未使用过 ArrayList 和 vector 。提前致谢!!

//Java class definitions, constructors, fields, methods etc here. 
//sphbasis is a Vector object.

    public SphericalHarmonicDecomposition[] getSphericalHarmonicBasis() {
    return (SphericalHarmonicDecomposition[])(sphbasislist.toArray(
    new SphericalHarmonicDecomposition[sphbasislist.size()]));
}

我尝试在 C# 中执行以下操作:

//C# class definitions, constructors, fields, methods etc here. 
//sphbasis is a ArrayList object.

    public SphericalHarmonicDecomposition[] getSphericalHarmonicBasis() {
    return (SphericalHarmonicDecomposition[])(sphbasislist.ToArray(
    new SphericalHarmonicDecomposition[sphbasislist.Count]));
    }

我收到以下错误。我在 Mac 上使用 Mono 和 Xamarin studio。

Error CS1502: The best overloaded method match for 
`System.Collections.ArrayList.ToArray(System.Type)' 
has some invalid arguments (CS1502) (projectx)

Error CS1503: Argument `#1' cannot convert    
`matdcal.engine.model.SphericalHarmonicDecomposition[]' expression 
to type `System.Type' (CS1503) (projectx)

最佳答案

请尝试以下操作。在 Java 中,您需要将数组传递给 toArray 方法,但在 C# (.NET) 中这是不正确的。

//C# class definitions, constructors, fields, methods etc here. 
//sphbasis is a ArrayList object.

    public SphericalHarmonicDecomposition[] getSphericalHarmonicBasis() {
    return (SphericalHarmonicDecomposition[])(sphbasislist.ToArray());
    }

引用文献

Java ArrayList.toArray

C# List.ToArray

关于java - 需要帮助将代码片段从 java 翻译为等效的 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21359284/

相关文章:

java - Java (Android) 中按年、月、日排序

java - 如何比较条件格式中的字符串?

c# - 从 C# 调用 C 函数,传递包含指针的结构

java - 如何手动打乱数组列表

安卓,SQLite : Inserting data in while clause is very slow

java - 无法将 Java 项目与 MySQL Workbench 连接(TIMEZONE 错误)

Java 8 运行 .exe 文件通过 Process Builder 使用参数最小化

c# - MVVM 最佳实践 - 直接使用模型列表成员的引用或制作副本?

c# - 如何使用 Visual Studio 开发可在所有 Windows 操作系统 xp、vista、7、8 上运行的 C# 应用程序

java - 如何将 arrayList 大小设置为 null?