不允许使用数组,该函数正在运行,但仅返回0,就好像它没有在计算正确的输入字符一样,但是现在它给了我“超出范围的字符串:3”]]
应该运行,打开一个窗口,要求我输入一个字符串,在这种情况下,这是一个单词,然后打开另一个窗口,要求我输入另一个字符串,在这种情况下,这是一个字母。然后,它获取第二个字符串(字母),并尝试查找该字母在第一个字符串(单词)中出现了多少次。
例如,我编译然后运行。运行后,它将打开一个窗口,我输入单词cat,然后打开第二个窗口,然后输入字母A。我得到一个返回窗口,告诉我字母A在单词cat中出现0次。这就是WAS发生的事情,现在我只是使字符串超出范围,异常字符串索引超出范围:3
import javax.swing.JOptionPane; // Need for JOptionPane /* This program is used to get a word and a letter from the user and count and display the number of times the letter appears in the word. */ public class LetterCounter { public static void main(String[] args) { String userInput; String userSentence; char userChar; int charCount = 0; int index = 0; userInput = JOptionPane.showInputDialog("Enter a String: "); userSentence = userInput; userInput = JOptionPane.showInputDialog("Enter a Character: "); userChar = userInput.charAt(0); for(index = 0; index < userSentence.length(); index++); { if(userSentence.charAt( index ) == userChar) { charCount++; } } JOptionPane.showMessageDialog(null, userChar + " is used in " + userSentence + " " + charCount + " time(s)."); System.exit(0); } }
任何人都知道出了什么问题吗?
不允许使用数组,该函数正在运行,但仅返回0,就好像它没有在计算正确的输入字符一样,但是现在它给了我一个“超出范围的字符串:3”,应该可以运行,...
问题出在以下代码块中,其中您在;
循环后放置了for
: