C#如何将数据导入数组中的数组

时间:2013-04-04 09:20:47

标签: c# arrays

我正在尝试用C#构建CD收集程序

  1. 创建新相册(即在相册数据库中添加新条目)
  2. 更改或删除相册数据库中的现有相册
  3. 在一张专辑中输入一段音乐的详细信息(标题,艺术家,流派和音乐的长度)
  4. 更改或删除相册中现有音乐的详细信息
  5. 列出指定相册中所有音乐的详细信息
  6. 列出给定艺术家的所有音乐
  7. 列出数据库中的所有音乐。您的计划必须允许用户选择列表的顺序:按专辑,按艺术家,按流派或按标题。
  8. 我被困在第3位,为每张专辑添加细节,到目前为止我有这个,我认为当我做对了,剩下的细节将很容易添加

    public bool AddSong(string songName)
        {
            for (int i = 0; i < MAX_MUSIC; i++)
            {
                string c = albumName;                   // This compares the album name given by user
                string e = myMusic[i].getAlName;        // to the album name in the myMusic array
                int d = c.CompareTo(e);                 //
                if (d == 0)
                {
                    int index = -1;
                    for (int j = 0; j < MAX_SONG; j++)
                    {
                        if (Songs[i] == null)
                        {
                            index = i;
                            break;
                        }
                    }
                    if (index != -1)
                    {
                        Songs[index] = songName;
                        ++totalSongs;
                        return true;
                    }
                }
            }
    
    
            return false;
    
        }
    

    任何帮助我指导的人都会非常感激。

    编辑:这是家庭作业,我是一名外部学生,我的讲师和他一样好,不会说英语,我不期待免费赠品。只是接近方向,也许是一个奇怪的暗示;)

    EDIT2:我的代码非常大,所以我认为它不适合发布如此大量的代码,我可以提供类的链接

    musicDB.cs

    music.cs

    Form1.cs

2 个答案:

答案 0 :(得分:1)

if (index != -1)
{
     Songs[index] = songName;
     ++totalSongs;
     return true;
}

这是您现在需要关注的部分。

问问自己:

  1. 如何创建新的Song类(初始化)?
  2. 如何设置Song类的属性?
  3. 最后,如何将Song应用于数组中的正确位置?

答案 1 :(得分:1)

           for (int j = 0; j < MAX_SONG; j++)
            {
                if (Songs[i] == null)
                {
                    index = i;
                    break;
                }
            }

你正在循环浏览j但是你没有在for循环中使用j。所以你真的在MAX_SONG时间做同样的事情。