подсчет определенных символов в строке (Java)

У меня есть домашнее задание по подсчету конкретных символы в строке.

Например: строка = "Америка"

Вывод должен быть = a появляется 2 раза, m появляется 1 раз, e появляется 1 раз, r появляется 1 раз, i появляется 1 раз и c появляется 1 раз

public class switchbobo {

/**
 * @param args
 */     // TODO Auto-generated method stub
  public static void main(String[] args){
    String s = "BUNANA";
    String lower = s.toLowerCase();
    char[] c = lower.toCharArray(); // converting to a char array
    int freq =0, freq2 = 0,freq3 = 0,freq4=0,freq5 = 0;

    for(int i = 0; i< c.length;i++) {
        if(c[i]=='a') // looking for 'a' only
          freq++;
        if(c[i]=='b')
          freq2++;
        if (c[i]=='c') {
          freq3++;
        }

        if (c[i]=='d') {
          freq4++;
        }       
    }
    System.out.println("Total chars "+c.length);
    if (freq > 0) {
      System.out.println("Number of 'a' are "+freq);
    }
  }
}

код выше - это то, что я сделал, но я думаю, что нет смысла иметь 26 переменных (по одной на каждую букву). У вас есть альтернативный результат?

8
задан Mike 13 November 2012 в 14:44
поделиться