C#列表中的java消费web服务
得分#更新#这可能听起来很愚蠢,但我已经被这个问题困扰了三天了! 我是C#的新手
我正在尝试使用C#中的web服务。我通过以下代码行使用Java中的web服务:
List x = new ArrayList<Score>();
x = topScores();
System.out.println("x" + x.size());
System.out.println("TOP SCORES:");
for (Object o : x) {
Score s1 = (Score) o;
System.out.println(s1.getScore());
}
我需要显示一个分数列表,但似乎无法在C#中计算出来。这就是我被困在C#的地方:
List<object[]> list = new List<score[]>();
我尝试了大量不同的声明集合的变体,但无法克服这一点。我想我知道如何遍历列表,但我无法通过声明。以下是我的错误消息:
Cannot implicitly convert type `System.Collections.Generic.List<score>' to `System.Collections.Generic.List<object>'
如果我将声明更改为:
List<score> list = new List<score>();
list = service.TopScores();
我收到了同样的错误,但这次我收到一条消息说:
"Object[] TopScores()"
我的Java代码片段的C#等价物是什么?我非常感谢任何帮助或建议!谢谢你抽出时间
# 1 楼答案
看起来您不需要创建
List<object>
,因为您的代码总是知道列表中的元素属于Score
类型。你可以这样做但是,如果确实要从
List<string>
创建List<object>
,最简单的方法是:# 2 楼答案
谢谢你的帮助。。。我想出来了
# 3 楼答案
列表<&燃气轮机;类位于名为泛型的集合类别中,它允许您创建强类型对象数组。列表部分意味着一个数组,因此您不需要将类型也声明为数组。而不是
List<object[]>
,你应该只做List<object>
。您也不能更改列表的数据类型。如果你想创建一个Score
的列表,你应该这样做然后你可以在列表中填入分数,如
或者别的什么
# 4 楼答案
声明此列表时,您需要具有相同的类型
然后