2016-03-23 9 views
0

基本的に、私は現在、プログラムの問題を抱えています。ここでオブジェクトの配列リストを作成し、その値をユーザーが配置したいと思っています。それをどうやって行うのかについてはまだ分かりません。Javaでユーザーごとに値を持つオブジェクトの配列を作成する

私の主なクラスでは、これらの属性を作成しました。

List<Games> games = new ArrayList<Games>(); 
    List<Company> company = new ArrayList<Company>(); 
    int userchoice; 

games.javaクラスでは、データの受信に同様の属性を使用しました。

games.java

public List<Games> getTitles() { 
    return titles; 
} 


public void setTitles(List<Games> titles) { 
    this.titles = titles; 
} 

私は値を配置するgames.add(gameTitle);を使用しますが、それは私の2つのエラーを与えるだろう。

そのうちの一つは、incompatible types: String cannot be converted into Games私はgames.add(1, gamesTitle);

を使用した場合、次は私が何をしようとしている私に

method collection.Add(Games) is not applicable, String cannot be converted to Games. 

を言うだろうがgameID、ゲームからユーザーの値を取得することであることを私に言うだろうTitleをarrayListに追加し、そのデータを引数としてクラスに送信し、データベースに配置します。

これは私が取り組んでいるJava Persistence APIプロジェクトです。どんな助力もありがとうございます。

Games.javaクラス

@Entity (name = "Games") 
public class Games implements Serializable { 
@Id 
private int id; 
private String title; 
private String genre; 

@ManyToOne 
@JoinColumn(name="GamesComp") 

private Company comp_Name; 


public int getId() { 
    return id; 
} 


public void setId(int id) { 
    this.id = id; 
} 


public String getTitle() { 
    return title; 
} 


public void setTitle(String title) { 
    this.title = title; 
} 


public String getGenre() { 
    return genre; 
} 


public void setGenre(String genre) { 
    this.genre = genre; 
} 


public Company getComp_Name() { 
    return comp_Name; 
} 


public void setComp_Name(Company comp_Name) { 
    this.comp_Name = comp_Name; 
} 

@Override 
public String toString() { 
    return "Game ID: " + getId() + " Title: " + getTitle() + 
      " with " + getGenre(); 
} 

会社クラス

@Entity 
@Table (name="Company") 
public class Company implements Serializable { 
@Id 
private int id; 
private String compName; 
@OneToMany(cascade = ALL, mappedBy="comp") 

private List<Games> titles; 

public Company() { 
    titles = new ArrayList<>(); 
} 


public int getId() { 
    return id; 
} 


public void setId(int id) { 
    this.id = id; 
} 


public String getCompName() { 
    return compName; 
} 


public void setCompName(String compName) { 
    this.compName = compName; 
} 

public void addGameTitles(Games t) { 
    this.titles.add(t); 
    t.setComp_Name(this); 

} 


public List<Games> getTitles() { 
    return titles; 
} 


public void setTitles(List<Games> titles) { 
    this.titles = titles; 
} 

@Override 
public String toString() { 
    return "Company ID: " + getId() + 
      ", Company Name: " + getCompName(); 
}  
+0

もう少しコードを追加して欲しいですか、私たちはあなたがそこで何をしているのかを知る必要があります...あなたはクラスを持っていますかゲームはあなたですか? –

+0

私は今あなたのために追加することができます – Kujinn

+0

私はゲームのarraylistから値を取る会社のクラスを持っています – Kujinn

答えて

0

ありがとう問題がある:あなたが

...ゲームオブジェクトのリストに文字列オブジェクトを挿入しようとしています

これを置き換えますList<Games> games = new ArrayList<Games>();

これは:

games.add(new Games("CallOfDuty")); 

私見、最後のオプションを:あなたはもちろん

class Games{ 
... 
Games(String gameTitle){ 
} 

とコード内のいくつかの場所のようなゲームクラスは、ゲームのリストにゲームを追加定義することができ

List<String> games = new ArrayList<String>(); 

よりエレガントでより良いデザインモデルを反映しています。

あなたはchの自由を持っていますoice。

+0

ありがとう、私はそれを試してみます – Kujinn

関連する問題