#java #count #letter
#java #считать #буква
Вопрос:
Мой код выглядит так прямо сейчас, он считает буквы в слове, но я хотел бы, чтобы мой код считал каждую букву в слове, поэтому, если я напишу banana
или nine
, код спросит, какую букву считать, и если я выберу «N», он напечатает 2 «N». Пожалуйста, помогите мне.
System.out.println("Ange ordet du vill leta i: ");
String str1 = sc.nextLine();
System.out.println("Ange bokstaven du vill leta efter: ");
String str2 = sc.nextLine();
int count = 0;
for(int i = 0; i < str2.length(); i ) {
if(str2.charAt(i) != ' ')
count ;
}
System.out.println("Antal bokstäver i ditt ord: " count);
Комментарии:
1. в чем именно заключается ваш вопрос?
2. Вам просто нужно изменить
if
, чтобы оно было true только в том случае, если символ является символом, который вы должны считать.3. Также Java не является javascript. Они никак не связаны.
4. Вы действительно близки. Во-первых,
str1
это строка, которую вы хотите просмотреть, поэтому вам нужно изменить цикл for, чтобы выполнить итерациюstr1
вместоstr2
. Тогда ваш оператор if должен бытьif(str1.charAt(i) == str2.charAt(0)
. Если вы сделаете это, вы посетите каждый символ вstr1
и сравните его с первой буквойstr2
, которая в любом случае должна содержать только одну букву. При желании вы можете добавить некоторую проверку ввода, поэтому, если пользователь вводит более одной буквы вstr2
или вообще ничего не вводит, вы можете повторно запросить ввод.
Ответ №1:
Вам не нужно сначала считать каждую букву. Вы должны считать после получения буквы для подсчета. Но в зависимости от сценария. Я предполагаю, что вам нужно получить количество букв в определенной строке.
Вы можете обернуть логику подсчета в while(), чтобы делать это снова и снова.
import java.util.Scanner;
public class MyClass {
public static void main(String args[]) {
Scanner scanner = new Scanner(System.in);
System.out.println("enter word");
String s = scanner.next();
System.out.println("enter letter");
char a = scanner.next().charAt(0);
int count = 0;
for(int i = 0; i < s.length(); i ){
if(s.charAt(i) == a){
count ;
}
}
System.out.println(count);
}
}