lots of exercises in java... from https://github.com/exercism/java

example.java 1.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. public class Scrabble {
  2. private String word;
  3. private static final Map<Character, Integer> letterScores = new HashMap<>();
  4. static {
  5. letterScores.put('a', 1);
  6. letterScores.put('e', 1);
  7. letterScores.put('i', 1);
  8. letterScores.put('o', 1);
  9. letterScores.put('u', 1);
  10. letterScores.put('l', 1);
  11. letterScores.put('n', 1);
  12. letterScores.put('r', 1);
  13. letterScores.put('s', 1);
  14. letterScores.put('t', 1);
  15. letterScores.put('d', 2);
  16. letterScores.put('g', 2);
  17. letterScores.put('b', 3);
  18. letterScores.put('c', 3);
  19. letterScores.put('m', 3);
  20. letterScores.put('p', 3);
  21. letterScores.put('f', 4);
  22. letterScores.put('h', 4);
  23. letterScores.put('v', 4);
  24. letterScores.put('w', 4);
  25. letterScores.put('y', 4);
  26. letterScores.put('k', 5);
  27. letterScores.put('j', 8);
  28. letterScores.put('x', 8);
  29. letterScores.put('q', 10);
  30. letterScores.put('z', 10);
  31. }
  32. private Object score;
  33. public Scrabble(String word) {
  34. this.word = word;
  35. }
  36. public int getScore() {
  37. return getScore(word);
  38. }
  39. public static int getScore(String input) {
  40. if (input == null || input.trim().isEmpty()) {
  41. return 0;
  42. }
  43. int score = 0;
  44. for (char letter : input.toLowerCase().toCharArray()) {
  45. score += letterScores.get(letter);
  46. }
  47. return score;
  48. }
  49. }