华为机试 牛客网 HJ1 字符串最后一个单词的长度
描述
计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。
输入描述
输入一行,代表要计算的字符串,非空,长度小于5000。
输出描述
输出一个整数,表示输入字符串最后一个单词的长度。
示例一
解法一
运行时间 33ms 占用内存 10804KB
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
String in = sc.nextLine();
String[] array = in.split(" ");
System.out.println(array[array.length-1].length());
}
}
解法二
运行时间 26ms 占用内存 10728KB
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
int length = str.length();
int count = 0;
for (int i = length - 1; i >= 0; i--) {
if (str.charAt(i)==' ') { // 或者 if (str.substring(i, i + 1).equals(" ")) {
break;
}
count++;
}
System.out.println(count);
}
}
反思
java输入的next()和nextLine()的区别
java中split()的使用细节
java中的chatAt(),codePointAt(),substring()的使用