如何对字符串中的字母进行计数和排序

2024-03-28

我想对用户输入的字母进行排序,并打印出用户输入的字符串中每个字母的数量。这就是我到目前为止所拥有的,我想知道这是否是正确的方法。我对java比较陌生,所以请让事情尽可能简单。根据我使用循环而不是大量 if else 构造的建议,我对我的代码做了一些调整。这就是我所拥有的:

public class Assignment9
{
public static void main( String [] args )
{
    String user_string = Input.getString( "Please enter a string" );
    int length = user_string.length();
    int char_number = 1;
    int alphabet[] = new int[26];
    for( int repeats = 0 , repeats <= length , repeats++ )
    {
        char letter = user_string.charAt( char_number );
        char to_be_tested = Character.toLowerCase( letter );
        int subscript = 0;
        for(int letter_number = 97 , letter_number <= 122 , letter_number++ )
        {
            char tester = (char) letter_number;

            if( to_be_tested == tester )
            {
                alphabet[subscript]++;
                subscript++;
            }
        }
        char_number++;
    }
    display( alphabet );
}
public static void display( int alphabet[] )
{
    int letter = 65;
    for( int a = 0; a < alphabet.length; a++ )
    {
        char character = ( char )letter;
        System.out.println ( "letter " + character + " count is " + alphabet[a] );
        letter++;
    }
}
}

我收到这些错误

编译错误 https://ideone.com/rlwDOH:

test.java:9: error: ';' expected
            for( int repeats = 0 , repeats <= length , repeats++ )
                                          ^
test.java:9: error: illegal start of expression
            for( int repeats = 0 , repeats <= length , repeats++ )
                                           ^
test.java:9: error: ';' expected
            for( int repeats = 0 , repeats <= length , repeats++ )
                                             ^
test.java:9: error: illegal start of expression
            for( int repeats = 0 , repeats <= length , repeats++ )
                                                     ^
test.java:9: error: ')' expected
            for( int repeats = 0 , repeats <= length , repeats++ )
                                                      ^
test.java:9: error: illegal start of expression
            for( int repeats = 0 , repeats <= length , repeats++ )
                                                                 ^
test.java:14: error: ';' expected
                    for(int letter_number = 97 , letter_number <= 122 , letter_number++ )
                                                              ^
test.java:14: error: illegal start of expression
                    for(int letter_number = 97 , letter_number <= 122 , letter_number++ )
                                                               ^
test.java:14: error: ';' expected
                    for(int letter_number = 97 , letter_number <= 122 , letter_number++ )
                                                                 ^
test.java:14: error: illegal start of expression
                    for(int letter_number = 97 , letter_number <= 122 , letter_number++ )
                                                                      ^
test.java:14: error: ')' expected
                    for(int letter_number = 97 , letter_number <= 122 , letter_number++ )
                                                                       ^
test.java:14: error: illegal start of expression
                    for(int letter_number = 97 , letter_number <= 122 , letter_number++ )
                                                                                        ^
12 errors

这是一种忽略大小写的更简单的字母计数方法:

final int[] chars = new int[26];
for (char c : value.toLowerCase().toCharArray()) {
  if ((c >= 'a') && (c<= 'z')) {
     chars[c - 'a']++;
  }
}

Demo: https://repl.it/CmYR/0 https://repl.it/CmYR/0

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何对字符串中的字母进行计数和排序 的相关文章

随机推荐

  • 输出文件名,不是带有选择字符串的字符串

    我正在使用 powershell 来 grep 特定字符串的源代码 如果字符串在文件中 我想要文件的名称 而不是包含该字符串的代码行 我还想要文件名 仅一次 而不是与文件存在的次数一样多地列出 我目前正在使用 gci include sql
  • 在实体框架和 Sql Server 中创建对象计数器

    注 1 我重新表述了问题 它现在由供应商和订单组成 而不是汽车和零件 注 2 此问题是假设的 我的目标是了解如何创建对象计数器 为了满足监管要求 我需要对每个供应商的每个订单进行顺序编号 我在用着 实体框架 与 SQL Server In
  • Django 使用 Ajax 登录?

    我正在开发一个 jquery 函数来使用 ajax 发布登录表单 在ajax成功中 如果登录成功与否 我想以不同的方式处理响应 因此 在 Django 中 我想知道是否可以在现有登录视图的基础上添加一些成功 错误变量 以便与返回的页面一起发
  • 在 C# 中声明事件的语法是什么?

    在我的班级中 我想声明一个其他班级可以订阅的事件 声明事件的正确方法是什么 这不起作用 public event CollectMapsReportingComplete 你忘了提及type 对于非常简单的事件 EventHandler h
  • 由于iOS 7,视图不出现

    我在装有 iOS 7 的 iPhone 上尝试了我的应用程序 除了一件事之外 一切都运行良好 在 iOS 6 版本上 当我执行以下代码时 加载视图 带有活动指示器 出现并在加载结束时消失 在 iOS 7 上 加载期间根本不会出现视图 sel
  • 在 Google Cloud Build yaml 中克隆私有 GitHub 存储库

    根据一个note https cloud google com cloud build docs access private github repos在 Cloud Build 文档中 标题为访问私有 GitHub 存储库 当您使用 Cl
  • 如何保存循环中的字符输出?

    所以我做了这个函数 它只需要一个数字元素 而不是一个向量 salaryCategory function s if s gt 40000 s lt 70000 print Low if s gt 70000 s lt 100000 prin
  • 导入错误:没有名为 cloud.ml 的模块

    我正在尝试按照说明在张量流中使用本地预测 如下所述here https cloud google com sdk gcloud reference ml engine local predict 运行命令gcloud ml engine l
  • 在 Twitter Bootstrap 装订线中放置垂直线的最佳方法

    div class row fluid div class span6 Some content div div class span6 Some content div div 我想在这两列之间的排水沟中间放置一条垂直线 该线不是列的完整
  • GODI-电池:安装问题

    我正在尝试使用 GODI 控制台安装 godi batteries 我似乎已经对所有依赖项进行了排序 例如甘菊 我在 Godi 的界面中收到以下错误 gt ocamlfind ocamlopt shared linkall package
  • Tidyverse 重复跟踪父 ID 直到祖先的方法

    来自 Rebrickable 的主题数据集 https rebrickable com downloads 包括每个主题的 ID 及其父 ID 此处已重命名列 可能会递归 ID 可能有祖父母 曾祖父母等 这是一个遵循父链 City gt A
  • apscheduler 中的作业调度中下一次运行时间错过了几秒

    我有一个执行 cron 作业的函数 def add config job sched job module JOB METHODS get job type if module is None logging warn job type r
  • 用于在nodejs javascript中向用户发送消息的gmail API失败

    我的nodejs程序无法使用Gmail api发送消息 解决方案来自用于在 Node js 中发送邮件的 Gmail API https stackoverflow com questions 34546142 gmail api for
  • Solr 自动提交和自动优化?

    我很快就会将我的网站上传到 VPS 这是一个分类网站 使用Solr与 MySql 集成 每当放置或删除新的分类时 Solr 就会更新 我需要一种方法来使commit and optimize 自动化 例如每 3 小时左右一次 我怎样才能做到
  • 我们可以在c#中的datatable.select中添加参数吗

    我想知道是否可以在 datatable select expression 中添加参数 例如 string query Name Name dt is comming from database dt Select query 如何添加这个
  • 如何使用java解码引用打印[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 如何使用 Java 解码 Quote
  • ng-bind 不应该也适用于输入吗?

    我对我的有点困惑
  • pycurl中登录并使用cookie

    我需要下载受密码保护页面上的文件 要手动访问该页面 我首先必须通过普通登录页面进行身份验证 我想使用curl 在脚本中获取此页面 我的脚本首先登录 它似乎成功了 它从 PUT 到 login 返回了 200 但是 获取所需页面失败 返回 5
  • 在球体上均匀生成点

    我感兴趣的是生成围绕球体 均匀 且非随机 分布的点 就像高尔夫球的凹坑或足球上六边形的顶点一样 是否有明确定义的算法可以做到这一点 注意 我知道这些点并不是真正 均匀 分布在球体上 但它们的分布方式是 从直视任何点的任何方向看 点的分布看起
  • 如何对字符串中的字母进行计数和排序

    我想对用户输入的字母进行排序 并打印出用户输入的字符串中每个字母的数量 这就是我到目前为止所拥有的 我想知道这是否是正确的方法 我对java比较陌生 所以请让事情尽可能简单 根据我使用循环而不是大量 if else 构造的建议 我对我的代码