我有以下代码:
import java.util.Scanner;
public class chara{
public static void main(String[]args){
Scanner input = new Scanner(System.in);
System.out.println("Input a string");
String user=input.nextLine();
if(user.length()<7)
{
return;
}
else
{
}
System.out.println("now input a letter to be replaced");
String letter = input.next();
String user2 = user.replace(letter, "-");
String user3 = user.replace(letter, "");
System.out.println(user2);
System.out.println(user3);
}
}
代码需要做三件事,包括字符串和字母:
目前我有两个问题。我不知道如何计算这封信的次数 出现,因为从技术上讲它是一个字符串,而不是一个字符,我不知道如何计算 字符串。其次,我需要这样做,如果字符串不是所需的长度它 只是再次询问而不是退出程序。我试图使用getString()方法,但由于某种原因,它总是说该方法是未定义的。
答案 0 :(得分:3)
问题#1:
靠近主要方法的顶部:
int count = 0;
分配user3后:
count += (user3.length() - user.length());
答案 1 :(得分:1)
对于解决问题#1的解决方案完全归功于user1324109,以下是解决问题的方法#2:
import java.util.Scanner;
public class StringReader {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String user1 = "", user2 = "", user3 = "";
int count = 0;
while(user1.equals("") || user1.length() < 7) {
System.out.println("Input a string");
user1 = input.nextLine();
}
if(!user1.equals("")) {
System.out.println("now input a letter to be replaced");
String letter = input.next();
user2 = user1.replace(letter, "-");
user3 = user1.replace(letter, "");
System.out.println(user2);
System.out.println(user3);
count += (user1.length() - user3.length());
System.out.println("letter was found to be present "+count+" times");
}
}
}
答案 2 :(得分:0)
帮助解决问题#3:
int count = 0;
for(char c : user.toCharArray() ){
if ( c == letter.charAt(0)) count++;
}
System.out.println("Number of occurences: "+count);