Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class Article implements Comparable<Article>
- {
- // field variables
- private String author, title;
- private int score;
- public Article(String author, String title, int score)
- {
- this.author = author;
- this.title = title;
- this.score = score;
- }
- /**
- * toString -
- * @return author, title, score
- */
- public String toString()
- {
- return (author + "; " + title + "; " + score);
- }
- /**
- * getAuthor -
- * @return author
- */
- public String getAuthor()
- {
- return author;
- }
- /**
- * getScore -
- * @return score
- */
- public int getScore()
- {
- return score;
- }
- /**
- * compareTo -
- * @return
- */
- public int compareTo(Article a)
- {
- if (getScore() < a.getScore())
- {
- return -1;
- }
- if (getScore() > a.getScore())
- {
- return 1;
- }
- return getAuthor().compareTo(a.getAuthor());
- }
- }
- //DRIVER
- public class Driver
- {
- /**
- * exam -
- */
- public static void exam()
- {
- Journal j = new Journal("c");
- Article a1 = new Article ("d", "Nu ka' det være nok!", 8);
- Article a2 = new Article ("a", "N00b", 8);
- Article a3 = new Article ("c", "Die!", 8);
- j.add(a1);
- j.add(a2);
- j.add(a3);
- System.out.println(a1.toString());
- System.out.println(a2.toString());
- System.out.println(a3.toString());
- System.out.println(j.selectByAuthor("Stephensen, Ole").size());
- System.out.println(j.highScoreArticle().toString());
- System.out.println("");
- j.printArticles();
- }
- }
- //JOURNAL
- import java.util.*;
- public class Journal
- {
- // field variables
- private String name;
- private ArrayList<Article> listOfArticle = new ArrayList<Article>();
- /**
- * Constructor for objects of class Journal
- */
- public Journal(String name)
- {
- this.name = name;
- }
- /**
- * add -
- * @param a
- */
- public void add(Article a)
- {
- listOfArticle.add(a);
- }
- /**
- * remove -
- * @param a
- */
- public void remove(Article a)
- {
- listOfArticle.remove(a);
- }
- /**
- * List<Article> selectByAuthor -
- * @param s
- * @return result
- */
- public List<Article> selectByAuthor(String s)
- {
- List<Article> result = new ArrayList<Article>();
- for (Article a : listOfArticle)
- {
- if (a.getAuthor().equals(s))
- {
- result.add(a);
- }
- }
- return result;
- }
- /**
- * highScoreArticle -
- * @return result
- */
- public Article highScoreArticle()
- {
- Article result = listOfArticle.get(0);
- for (Article s : listOfArticle)
- {
- if (s.getScore() > result.getScore())
- {
- result = s;
- }
- }
- return result;
- }
- /**
- * printArticles - Sort arraylist and print all articles in the array
- */
- public void printArticles()
- {
- Collections.sort(listOfArticle);
- for (Article a : listOfArticle)
- {
- System.out.println(a);
- }
- }
- }
Add Comment
Please, Sign In to add comment