思路
首先看到题目的示例是一段字符串,类似Hello World。根据正常的思维我们应该是找到最后一个空格,然后记录这个空格的位置,从这个位置开始向后,检查子字符串的长度。
我的解法是首先将这个字符串变成一个char数组,然后倒序遍历这个数组,一旦遇到空格这个字符,就立刻跳出循环。每次循环的时候计数器加1,跳出的时候,计数器就是最后一个字符串的长度。
代码
import java.util.Scanner;
public class Main {
    public int convert(String str) {
        char[] chars = str.toCharArray();
        int length = 0;
        for (int i = chars.length - 1; i >= 0; i--) {
            if (chars[i] == ' ') {
                break;
            }
            length++;
        }
        return length;
    }
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        Main main = new Main();
        while (in.hasNext()) {
            String str = in.nextLine();
            System.out.println(main.convert(str));
        }
    }
}
 
京公网安备 11010502036488号