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

题目描述

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

输入描述:

一行字符串,非空,长度小于5000。

输出描述:

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

示例1

输入

hello world

输出

5

解答

import java.util.Scanner;
 
public class Main {
    public static void main(String[] args) {
        //write your code here
        //scanner输入
        Scanner input = new Scanner(System.in);
        String s = "";
        //采用has xxxx的话,后面也要用next xxxx。
       //比如前面用hasNextLine,那么后面要用 nextLine 来处理输入
       //一开始的想法是找到字符串从右往左第一个空格的位置,然后再用字符串长度计算最后一个单词的长度        
      //但字符串结尾有空格失效时如果输入的为"hello world "结果为0 
      //解决方法如上用split()方法将字符串以空格分隔 并 把分割后的字符串保存在数组中 数组最后一个元素的长度即为所求
        while (input.hasNextLine()) {
            s = input.nextLine();
            //以空格进行分割
            String[] split = s.split(" ");
            int n = split[split.length - 1].length();
            System.out.println(n);
        }
    }
}

学到的东西

1.Scanner用于获取输入

常用写法Scanner input = new Scanner(System.in);

2.next和nextline区别

“123 123” next取的是123 nextline取的是123 123

3.indexOf()方法和lastIndexOf()方法

lastIndexOf()方法 找出从右往左第一个值出现的位置(从左计数从0开始)

indexOf()方法 找出从左往右第一个值出现的位置(从左计数从0开始)

posted @ 2020-06-07 10:43  smsmdmx  阅读(137)  评论(0)    收藏  举报