题解 | #字符串最后一个单词的长度#
1、暴力处理,根据空格来调用split切割字符串,这里可以写" " 或者通过正则"\\s+ ",正则是为了,如果有多个空格,例如"123 456 789"的情况,依然可以切割成三个字符串
然后得到一个数组,数组的最后一位就是需求中的单词,获取单词的长度即可
import java.util.Scanner; public static void main(String[] args){ Scanner sc = new Scanner(System.in); String str = sc.nextLine(); String[] s = str.split(" "); //正则表达式实用性更强( str.split("\\s+")) int length = s[s.length - 1].length(); System.out.println(length); }
2、将输入的string,倒序遍历,如果char等于空格,那就break,并且在for循环里面计数。
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); }