0

学期の最後のプロジェクトである宿題に行き詰まっています。Song クラスと MP3_Player クラスを含むプログラムを作成する必要があります。私が抱えている問題は、ユーザーからの入力を受け取り、それを arrayList に入れて出力することです。誰かが私を正しい方向に押しやるのを手伝ってくれませんか。

package program3;

import java.util.Scanner;





/**
 *
 * @author Seth
 */
 public class Main {

/**
 * @param args the command line arguments
 */
public static void main(String[] args) {
    // TODO code application logic here


    Scanner sc = new Scanner(System.in);

    System.out.print("Enter the song's title:");
        String title = sc.nextLine();
    System.out.print("Enter the song's artist:");
        String artist = sc.nextLine();
    System.out.print("Enter the song's duration:");
        float duration = sc.nextFloat(); 
    System.out.print("Enter the size of the songs file: "); 
        int fileSize = sc.nextInt(); 

    Song song = new Song(title, artist, duration, fileSize);
        song.add(song);

    for (int i = 0; i<song.length; i++){
        System.out.println("Song " + i + " title is: " + 
            song.getTitle() + ", the artist is " + 
            song.getArtist() + " and the duration is " + 
            String.valueOf(song.getDuration()) + ".");
    }

}

}






package program3;

import java.util.ArrayList;



 /**
 *
 * @author Seth
 */
public class MP3_Player {

private int freeSpace;
private int storageCapacity;

ArrayList<Song> songList = new ArrayList<Song>(); 



public MP3_Player( )
{ 
   storageCapacity = 10;
   freeSpace = storageCapacity; 

}

public MP3_Player(int storage)
{
    storageCapacity = storage; 
    freeSpace = storageCapacity;

}    

public String toString()
{
    return "MP3 player with capacity " + storageCapacity + 
            ", " + freeSpace + " left, contains:\n" + 
    songList.toString().replace("[","").replace("]","").replace(",","\n");
}

public int getFreeSpace()
{
    return freeSpace; 
}

public int getStorageCapacity()
{
    return storageCapacity; 
}

public ArrayList<Song> getSongList()
{
    return songList; 
}

public void setStorageCapacity(int newStorageCapacity)
{
    storageCapacity = newStorageCapacity; 
}

public void setFreeSpace(int newFreeSpace)
{
    if (newFreeSpace >= 0) {
        freeSpace = newFreeSpace; 
    }
}


public void addSong(Song s)
{
     if(s.getFileSize() <= freeSpace)
     {
         songList.add(s);
         System.out.println(s.getTitle() + " added to the MP3 player."); 
         freeSpace -= s.getFileSize(); 
     }
     else
     {
         System.out.println("Cannot add " + s.getTitle() + 
                 " not enough free space.");
     }

}


public void removeSong(Song s)
{
    boolean songRemoval = false; 
    for (Song i : songList)
    {
        if(s.equals(i))
        {
            freeSpace += s.getFileSize(); 
            songRemoval = true; 
            System.out.println(s.getTitle() + 
                    " is removed from the MP3 Player."); 
        }
        else if(s.equals(i))
        {
            System.out.println("This song isn't stored in the MP3 Player."); 
        }
    }
    if(songRemoval)
    {songList.remove(s); 
}
}
}
4

1 に答える 1

1

だからここにあなたの問題の解決策があります...(私によると):-)

  1. ユーザーに追加したい曲の数を尋ねることから始めます。たとえば、N.
  2. N回ループして、次の手順を繰り返します
  3. ユーザーに曲の詳細を入力させます。たとえば、曲にはタイトル、アーティスト、その他の詳細、サイズを 4 つ追加する必要があります。
  4. サウンド クラスにすべての詳細を追加させると、このループの後、N 曲のオブジェクトが作成されます。
  5. では、すべての曲とその情報をどのように印刷しますか。
  6. コードは次のとおりです。

    //loop through the arraylist like this 
    for (Song s:arraylistofobjcts){
       s.o.p("Songs"+s.getTitle()+s.getArtist()+s.getWriter()+s.getFileSize())
    }
    

    //それでおしまい..

    **So this the song class**
    

**パブリッククラスソング{

private String title,writer,artist;
    private int size;

public Song(String title,String writer, String artist,int size){

    this.setTitle(title);
    this.setWriter(writer);
    this.setArtist(artist);
            this.setSize(size); 
}
public int getSize() {
    return this.size;
}
public void setSize(int size) {
    this.size = size;
}
public String getTitle() {
    return this.title;
}
public void setTitle(String title) {
    this.title = title;
}
public String getArtist() {
    return this.artist;
}
public void setArtist(String artist) {
    this.artist = artist;
}
public String getWriter() {
    return this.writer;
}
public void setWriter(String writer) {
    this.writer = writer;
}

}**

乾杯

于 2013-04-17T07:52:37.597 に答える