如何在Java中获取for循环的最后一个值?

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。


如果有人能帮助我解决这个问题,我将不胜感激。


暮色呼如
浏览 1429回答 1
1回答

元芳怎么了

如果只想输出最后一次查找,则需要移动System.out.print(match);跳出循环。但请确保您的计数器>0在您打印之前match。否则你会得到0-1一个输出。为此,请添加另一个if (counter > 0) { }或将打印移动到现有的 else 块中if (counter == 0)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java