import java.util.Scanner;public class Problem1{ public static void main(String[] args){ //input Scanner kb = new Scanner(System.in); String word,letter; int counter=0, match,value; word=kb.next(); word=word.toLowerCase(); letter=kb.next(); letter=letter.toLowerCase(); //loop for (int i=0;i<word.length();i++) if (word.charAt(i)==letter.charAt(0)){ counter++; match=i; System.out.print(match); } if (counter==0) System.out.print(-1); }}我必须在 Codio 中执行这个程序。该程序将读取一个单词和一个字母,检查字母是否在单词中。如果是,它将在单词中打印字母的索引;如果字母出现不止一次,它将打印最后一个位置。如果字母不在单词中,它将打印 -1。当我在 Codio 中运行它时,有 3 个位置有这个字母:2、3 和 5。我只想取 5。如果有人能帮助我解决这个问题,我将不胜感激。
1 回答
元芳怎么了
TA贡献1798条经验 获得超7个赞
如果只想输出最后一次查找,则需要移动
System.out.print(match);
跳出循环。
但请确保您的计数器>0
在您打印之前match
。否则你会得到0-1
一个输出。
为此,请添加另一个if (counter > 0) { }
或将打印移动到现有的 else 块中if (counter == 0)
添加回答
举报
0/150
提交
取消