将歌曲分配到数据库插槽,简单的音乐数据库



我试图写一个方法,将查看数据库(4 '插槽')找到下一个空的,并存储一个歌曲对象(艺术家,名称,持续时间,文件大小)。每当我在程序中输入数据时,我当前的方法似乎将传入的歌曲对象分配给所有数据库"槽",任何帮助都会非常感谢

所有4个java类都在这里,如果有人可以看看-----> http://www.fast-files.com/getfile.aspx?file=62228

public void addSong()
{  
    Song S = new Song();  
    do{  
            if (a.fileSize==0) {
                    setData(a.artist, a.name, a.duration, a.fileSize);
                break;
                } else if (b.fileSize==0) {
                    setData(b.artist, b.name, b.duration, b.fileSize);
                break;
                } else if (c.fileSize==0) {
                    setData(c.artist, c.name, c.duration, c.fileSize);
                break;
                } else if (d.fileSize==0) {
                    setData(c.artist, c.name, c.duration, c.fileSize);
                break;
                }
    }while(true); 
}

public void setData( String artist, String name, double duration, int fileSize)
{
    S.setArtist(artist);
    S.setName(name);
    S.setDuration(duration);
    S.setFileSize(fileSize);
}

编辑 - 4数据库java类的http://www.fast-files.com/getfile.aspx?file=62228

首先,去掉循环。

第二,我认为你的问题是隐藏S变量。在setData中,您设置S属性(这里是一个全局字段),而在addSong中,您声明并实例化一个新的S变量,您从未使用过。

你可以这样做:

    请确保使用正确的变量。
  1. S传递给setData,这样它将设置参数的字段而不是全局字段。

最新更新