题解 | #字符串最后一个单词的长度#

字符串最后一个单词的长度

https://www.nowcoder.com/practice/8c949ea5f36f422594b306a2300315da

import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String input = in.nextLine();
        int lastLength = 0;

        char[] chars = input.toCharArray();

        for (int i = chars.length - 1; i >= 0; i--) {
            if (chars[i] != (char) 32) {
                lastLength++;
            } else {
                break;
            }

        }
        System.out.print(lastLength);
    }
}

解题思路:

将输入的字符串转换为字符数组,倒着遍历该数组,如果遇到不是空格的字符,将统计变量lastLength加1,否则结束遍历。

注意:

在判断是否是空格时,使用了ASCII码进行转换。chars[i] != (char) 32。

import java.util.*;
public class Main{
    public static int lengthOfLast(String str) {
        String[] s =str.split(" ");
        return s[s.length-1].length();
    }
    
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        while(scan.hasNext()){
            String str = scan.nextLine();
            System.out.println(lengthOfLast(str));
        }
    }
}

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务