Код для поиска конкретного письма помощи
Я только начал Java, и я играю вокруг.
У меня есть следующий код, который я хочу посчитать букву "е" вашего ввода, но каждый раз вывод "0". Что я делаю неправильно? Благодарю.
import javax.swing.JOptionPane;
public class JavaApplication6 {
public static void main(String[] args, int z) {
int y,z = 0;
String food;
food = JOptionPane.showInputDialog("Are you curious how many \"e\"s there are in your favorite Food? Then Type your favorite food and I will tell you!");
char letter = 'e';
for(int x = 0; x < food.length();x++){
if(food.charAt(z)== letter){
y = y++;
}
}
JOptionPane.showMessageDialog(null, "it has: " + y);
}
}
1 ответ
Решение
Так как вы используете x
в вашем для цикла, и итерации по каждому символу в food
, вместо food.charAt(z)
, ты должен делать food.charAt(x)
, Кроме того, вы можете посмотреть, как использовать операторы увеличения / уменьшения. Вот еще немного информации на эту тему.
Я немного изменил ваш код (в основном форматирование), но это должно решить вашу проблему:
import javax.swing.JOptionPane;
public class JavaApplication6 {
public static void main(String[] args) {
int y = 0;
char letter = 'e';
String food = JOptionPane.showInputDialog("Are you curious how many \"e\"s " +
"there are in your favorite Food? Then Type your favorite food and I " +
"will tell you!");
for(int x = 0; x < food.length(); x++)
if(food.charAt(x) == letter)
y++;
JOptionPane.showMessageDialog(null, "it has: " + y);
}
}