命名那點事兒

這裏寫自定義目錄標題

1. 看看下面的小工具

一個用函數直接寫的小工具,一個又用類封裝了一下。 有什麼感覺?

public class MessageUtil {

   private void printGuessStatistics(char candidate, int count) {
       String number;
       String verb;
       String pluralModifier;
       if (count == 0) {
           number = "no";
           verb = "are";
           pluralModifier = "s";
       } else if (count == 1) {
           number = "1";
           verb = "is";
           pluralModifier = "";
       } else {
           number = Integer.toString(count);
           verb = "are";
           pluralModifier = "s";
       }

       String guessMessage = String.format("There %s %s %s%s", verb, number, candidate, pluralModifier);

       System.out.println(guessMessage);
   }

   static class GuesStatisticsMesage {
       private String number;
       private String verb;
       private String pluralModifier;

       public String make(char candidate, int count) {
           createPluralDependentMessageParts(count);
           return String.format("There %s %s %s%s", verb, number, candidate, pluralModifier);
       }

       private void createPluralDependentMessageParts(int count) {
           if (count == 0) {
               thereAreNoLetters();
           } else if (count == 1) {
               thereIsOneLetter();
           } else {
               thereAreManyLetters(count);
           }
       }

       private void thereAreManyLetters(int count) {
           number = Integer.toString(count);
           verb = "are";
           pluralModifier = "s";
       }

       private void thereIsOneLetter() {
           number = "1";
           verb = "is";
           pluralModifier = "";
       }

       private void thereAreNoLetters() {
           number = "no";
           verb = "are";
           pluralModifier = "s";
       }
   }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章