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

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

http://www.nowcoder.com/questionTerminal/8c949ea5f36f422594b306a2300315da

#java

  • 方法一: 系统函数
      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);
      }
  • 方法二: 反过来打印
      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);
      }
全部评论
那全是空格算什么单词呢?
2 回复 分享
发布于 2021-06-09 18:11
有一个函数比较方便,是之前学习截取网站学到的。 public static void main(String[] args) { Scanner sc = new Scanner(System.in); String str = sc.nextLine(); System.out.println(str.length()-str.lastIndexOf(" ")-1); }
13 回复 分享
发布于 2022-02-07 09:04
第二种方法有一个漏洞,如果传入的字符串全是空格的话,无论怎么输出都会是0
5 回复 分享
发布于 2020-12-13 12:12
题目要求了:字符串末尾不以空格为结尾,最后一个字符肯定不是空格,向前找到第一个空格,单词就结束了
4 回复 分享
发布于 2021-12-30 15:13
有一个问题,如果这个字符串是以其他非字母结尾的呢?比如说一个英文句子,最后是以英文句号"."结尾的,显然题解给出的答案将这个"."算进了最后一个单词,所以方法一在split计算之后应该判断单词后面非字母字符的个数,然后减去,这样就和方法二其实大差不差,方法二是不是也应该改一下判断条件呢
2 回复 分享
发布于 2022-05-12 20:36
str.lastIndexOf(' ')
2 回复 分享
发布于 2022-03-15 18:25
方法一是有问题的,如果输入的字符串中有其他字符那结果就不对了,比如我输入字符串abcdefg L6这样怎么算呢?是有单词还是没单词呢。显然结果应该是没有单词的
点赞 回复 分享
发布于 2023-08-01 11:35 广东
s[s.length()-1].length; 他这个s方法1中定义的是Stirng[]数组 我想问String[]数组有length.()这个方法吗?显示出错了
点赞 回复 分享
发布于 2022-07-18 18:23
编译错误 编译错误:您提交的代码无法完成编译 Main.java:3: error: cannot find symbol Scanner sc = new Scanner(System.in); ^ symbol: class Scanner location: class Main Main.java:3: error: cannot find symbol Scanner sc = new Scanner(System.in); ^ symbol: class Scanner location: class Main 2 errors why?????
点赞 回复 分享
发布于 2022-05-02 16:23
机智啊老铁,顺序处理好麻烦
点赞 回复 分享
发布于 2022-04-18 17:08
#java方法一tips:找不到类名,请修改类名为 Main
点赞 回复 分享
发布于 2022-03-09 01:02
没人用stream么
点赞 回复 分享
发布于 2022-02-09 16:05

相关推荐

03-13 16:51
已编辑
门头沟学院 硬件开发
点赞 评论 收藏
分享
评论
299
19
分享

创作者周榜

更多
牛客网
牛客企业服务