华为OJ——字符串最后一个单词的长度

题目:

描述

计算字符串最后一个单词的长度,单词以空格隔开。

知识点 字符串,循环
运行时间限制 0M
内存限制 0
输入

一行字符串,长度小于128。

输出

整数N,最后一个单词的长度。

样例输入 hello world
样例输出 5
代码:
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        while (scanner.hasNext()) {
            String input = scanner.nextLine();
            System.out.println(findLastWordLength(input));
        }
        scanner.close();
    }

    public static int findLastWordLength(String input) {
        // 最后一个字母的位置
        int last = input.length() - 1;
        // 找最后一个字母出现的位置
        while (last >= 0 && input.charAt(last) == ' '){
            last--;
        }
        // 找最后一个字母之前的第一个空白字符
        int pos = last - 1;
        while (pos >= 0 && input.charAt(pos) != ' '){
            pos--;
        }
        return last - pos;
    }
}

The java.util.Scanner.hasNext():This method Returns true if this scanner has another token in its input. This method may block while waiting for input to scan. The scanner does not advance past any input

String charAt() Method:This method returns the character located at the String's specified index. The indexes start from zero.

java.util.Scanner.Next():This method returns a String object which is a complete token of the Scanner object.

返回Scanner的下一个标记,或指定模式的下一个匹配,即返回的只是第一个输入

java.util.Scanner.NextLine():  This method returns a String which corresponds to the skipped line of the Scanner object. 
向前跳过当前行,并返回输入中跳过的输入行,即返回的是一行

Example:

public class Test {

   public static void main(String args[]) {
      String s = "Strings are immutable";
      char result = s.charAt(8);
      System.out.println(result);
   }
}
Result:

a


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值