题解 | #字符个数统计#

字符个数统计

https://www.nowcoder.com/practice/eb94f6a5b2ba49c6ac72d40b5ce95f50

  1. 注意hasnext和hasnextline的区别
  2. 注意continue的用法
  3. 在提供的代码中,当遇到特定条件时执行continue语句,该语句会跳过当前循环迭代的剩余部分,并继续下一次循环迭代。它不会直接跳出整个循环,而是继续检查下一个输入单词并执行相应的逻辑。

    在代码中的这个特定条件是,当字符的ASCII值大于127时,会执行continue语句,跳过将字符添加到HashSet的步骤。这意味着非ASCII字符将被忽略,不会被计入唯一字符的计数中。

    循环将继续处理下一个字符,直到处理完整个单词。然后,将输出HashSet的大小,即单词中的唯一字符数量。然后,循环将继续读取下一个输入单词并重复这个过程。

    所以,continue语句在这里并不会直接跳出整个循环,它只是跳过当前迭代的剩余部分。

import java.util.Scanner;
import java.util.HashSet;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNext()) { // 注意 while 处理多个 case
            String words = in.next();
            HashSet<Character> hs = new HashSet<Character>();
            for(int i = 0;i<words.length();i++){
                if(Integer.valueOf(words.charAt(i)) > 127) continue;
                hs.add(words.charAt(i));
            }
            System.out.println(hs.size());
        }
    }
}

全部评论

相关推荐

06-12 16:00
天津大学 Java
牛客30236098...:腾讯坏事做尽,终面挂是最破防的 上次被挂了后我连简历都不刷了
点赞 评论 收藏
分享
在投简历的柠檬精很想...:可以明确说,问的东西几乎是简历上的东西。你写的确实有点模糊。面试可能会问你一些常用的通信的问题,差分信号走线之类的,单片机最小系统啥的,模电,数电,基本电源,buck,boost,ldo之类的吧。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务