我创建了两个类,第一个名为X1 X2 X3 X4 X5
1 1 1 NA NA
NA NA 1 1 1
,第二个名为Author
。
在Book
类中,我有以下属性:
Book
以及以下构造函数:
private string s_titre;
private string[] name_author;
private double d_Price;
我不知道如何从public Book(string title, Author[] author, double price)
{
this.s_titre = titre;
for (int i = 0; i <auteur.Length; i++)
{
authoritarianism[i] = auteur[i].name;
}
this.d_price = price;
}
填写author
字段。
我尝试了上面的代码,但它没有用。
答案 0 :(得分:0)
也许您先忘了创建阵列?
public Book(string title, Author[] author, double price)
{
this.s_titre = titre;
// create an array of the same length as author
authoritarianism = new string[author.Length];
for (int i = 0; i <auteur.Length; i++)
{
authoritarianism[i] = auteur[i].name;
}
this.d_price = price;
}
答案 1 :(得分:0)
代码不起作用的原因是类中的数组尚未初始化。您可以使用LINQ:
初始化和复制数组(实际上,任何IEnumerable<T>
)
public Book(string title, IEnumerable<Author> author, double price) {
s_titre = titre;
d_price = price;
authoritarianism = author.ToArray();
}
修改:我想将
中auther[i].name
存储在name_author[i]
向链中添加Select
的调用:
author_names = author.Select(a => a.Name).ToArray()