Хорошо, я считаю себя осведомленным об основах и некоторой передовой Java, но до сих пор не имею смелости приступить к программированию своих идей, которые у меня есть. Это простая программа, я придумал, что в основном выводит количество определенной буквы ваш текст (я думаю, что я сформулированное, что неправильно ...) это мой код:Простой и эффективный способ сделать это?
public class gene {
public static void main(String[] args) {
String[] phrases = {"hello", "egg", "learning", "ferrero", "rocher",
"Horologe", "Twinling"};
int a=0;
int b=0;
int c=0;
int d=0;
int e=0;
int f=0;
int g=0;
int h=0;
int i=0;
int j=0;
int k=0;
int l=0;
int m=0;
int n=0;
int o=0;
int p=0;
int q=0;
int r=0;
int s=0;
int t=0;
int u=0;
int v=0;
int w=0;
int x=0;
int y=0;
int z=0;
for(int ii =0; ii <phrases.length; ii++){
char[] charphrases = phrases[ii].toCharArray();
for(int iii = 0; iii<charphrases.length; iii++){
switch(charphrases[iii]){
case ('a'):
a++;
break;
case ('b'):
b++;
break;
case ('c'):
c++;
break;
case ('d'):
d++;
break;
case ('e'):
e++;
break;
case ('f'):
f++;
break;
case ('g'):
g++;
break;
case ('h'):
h++;
break;
case ('i'):
i++;
break;
case ('j'):
j++;
break;
case ('k'):
k++;
break;
case ('l'):
l++;
break;
case ('m'):
m++;
break;
case ('n'):
n++;
break;
case ('o'):
o++;
break;
case ('p'):
p++;
break;
case ('q'):
q++;
break;
case ('r'):
r++;
break;
case ('s'):
s++;
break;
case ('t'):
t++;
break;
case ('u'):
u++;
break;
case ('v'):
v++;
break;
case ('w'):
w++;
break;
case ('x'):
x++;
break;
case ('y'):
y++;
break;
case ('z'):
z++;
break;
}
}
}
System.out.println("A:" + a + "\n" + "B:" + b + "\n" +"C:" + c + "\n" +"D:" + d + "\n" +"E:" + e + "\n" +"F:" + f + "\n" +"G:" + g + "\n" +"H:" + h + "\n" +"I:" + i+ "\n" +"J:" + j + "\n" +"K:" + k + "\n" +"L:" + l + "\n" +"M:" + m + "\n" +"N:" + n + "\n" +"O:" + o + "\n" +"P:" + p + "\n" +"Q:" + q + "\n" +"R:" + r+ "\n" +"S:" + s + "\n" +"T:" + t + "\n" +"U:" + u + "\n" +"V:" + v + "\n" +"W:" + w + "\n" +"X:" + x + "\n" +"Y:" + y + "\n" +"Z:" + z + "\n" + z);
}
}
Как вам может видеть, его ОЧЕНЬ долго для такой простой программы и, без сомнения, есть более короткий способ ее написать. Может кто-то сказать мне, где я могу сконденсировать программу, чтобы сделать ее более короткой и более эффективной.
Исправьте свой титул , Он должен описать реальную проблему. – EJP
Подробнее о [массивах] (http://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html). Вы можете сделать это с помощью массива вместо 26 отдельных переменных. – Jesper
Хорошее место для посещения может быть [http://codereview.stackexchange.com/](http://codereview.stackexchange.com/) здесь, ваш код получает обзор. :) –