String类是Java最常用的API,它包含了大量处理字符串的方法,比较常用的有:
- char charAt(int index):返回指定索引处的字符;
- String[] split(String regex):以指定的规则将此字符串分割成数组;
- int indexOf(String str):返回子串在此字符串首次出现的索引;
- int lastIndexOf(String str):返回子串在此字符串最后出现的索引;
下面我简要的对这个题目做一个分析:
- 首先第一步我们得使用Scanner作为后续的一个输入,此时我们没必要只单单的导入Scanner,我们可以使用 * 来一劳永逸 . 具体语法如: import java.util.*;
- 我们在输入每行的数据之前可以使用while语句,方便之后大批量的处理数据.在输入数据的时候我们可以使用nextInt(), 在输入字符串的时候我们需要使用nextLine().具体语法如:while (in.hasNextLine()){}
- 接下来当我们输入字符串之后由于我们要取的是字符串的最后一个单词长度,所以我们有必要将字符串中的单词进行分割,这时候我们就用到了split(),意思就是按照括号内的要求将字符串进行分割.
- 最后我们进行长度的求取即可
具体实现代码如下:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
while (in.hasNextLine()) { // 注意 while 处理多个 case
String s1 = in.nextLine();
String[] str = s1.split(" ");
System.out.print(str[str.length - 1].length());
}
}
}
注意:此处str[str.length - 1].length()语句的意思就是按照下标的方式取出数组中的最后一个单词,因为在数组中我们默认下标是从0开始然后到数组的长度减1的位置截止.然后length()方法是取得字符串的长度.
运行结果如下: