kazh;
私は私のコード「きれい」にしようとしています。私は、if文の多くの多くの機能を持っています。どのように私はそれらを置き換えることができますか?
私はそれらのIFSを持っている理由だ4つの貴様のハッシュテーブルを使用しています。唯一の変更は、ハッシュテーブル名で、私は情報を追加するJList。
if(n.getCategorie().getNum() == Categorie.INTERNATIONAL.getNum())
{
DefaultListModel dlm = (DefaultListModel) jListInternationales.getModel();
dlm.addElement(n.getTitre());
jListInternationales.setModel(dlm);
NewsInter.put(""+nNews, n);
}
else if(n.getCategorie().getNum() == Categorie.POLITIQUE.getNum())
{
DefaultListModel dlm = (DefaultListModel) jListViePolitique.getModel();
dlm.addElement(n.getTitre());
jListViePolitique.setModel(dlm);
NewsPolitique.put(""+nNews, n);
}
else if(n.getCategorie().getNum() == Categorie.RAGOT.getNum())
{
DefaultListModel dlm = (DefaultListModel) jListRagotsEtPotins.getModel();
dlm.addElement(n.getTitre());
jListRagotsEtPotins.setModel(dlm);
NewsRagot.put(""+nNews, n);
}
else if(n.getCategorie().getNum() == Categorie.SPORT.getNum())
{
DefaultListModel dlm = (DefaultListModel) jListInfosSports.getModel();
dlm.addElement(n.getTitre());
jListInfosSports.setModel(dlm);
NewsSport.put(""+nNews, n);
}
チャールズDowbecki:
唯一の違いif
の枝から来るJList
参照。コードが繰り返されているので、あなたは別の方法にそれを抽出する必要があります。
private void updateList(JList list) {
DefaultListModel dlm = (DefaultListModel) list.getModel();
dlm.addElement(n.getTitre());
list.setModel(dlm);
}
その後、コードは非常にクリーン次のようになります。
if (n.getCategorie().getNum() == Categorie.INTERNATIONAL.getNum()) {
updateList(jListInternationales);
} else if (n.getCategorie().getNum() == Categorie.POLITIQUE.getNum()) {
updateList(jListViePolitique);
} // etc
NewsInter.put(""+nNews, n);