当前位置: 首页 > 面试题库 >

EBCDIC编码的Java Java比较器

储思聪
2023-03-14
问题内容

我遇到了一个需要将字符串转换为EBCDIC编码然后对其进行排序的要求。我们需要使用EBCDIC对其进行排序,因为字符串必须放在大型机中。我将排序的字符串只有大写字母和整数。

我用谷歌搜索了一下,然后发现了来自IBM的链接,该
链接按顺序列出了字符

我意识到,EBCDIC排序与常规java字典排序完全相反(至少对于我要处理的数据类型而言)。

我的问题是我的认识对吗?如果不是我想念的东西?或者是否有任何可用于EBCDIC编码的Java比较器。


问题答案:

由于char类型在Java EBCDIC字符串中隐式为UTF-16,因此需要将其作为Java字节数组进行比较。

例:

    Charset encoding = Charset.forName("IBM1047");
    Comparator<String> encComparator = (s1, s2) ->
            encoding.encode(s1)
                    .compareTo(encoding.encode(s2));


 类似资料:
  • X2.1.0新增 sp_compare_password($password,$password_in_db) 功能: CMF密码比较方法,所有涉及用户密码比较的地方都用这个方法 参数: $password: 用户输入的密码 $password_in_db:数据库保存的经过加密后的密码串 返回: 类型boolean,密码相同,返回true 使用: $is_right = sp_compare_p

  • 我有一个关于compareTo函数如何帮助比较器排序的问题,即o1。比较(o2)与o2。比较(o1) 如果两个字符串相等,则此方法返回0,否则返回正值或负值。如果第一个字符串在词典上大于第二个字符串,则结果为正,否则结果为负。 上面的陈述很简单,但是为什么o1.compare(o2)会给我一个升序,而o2.compare(o1)给了我一个降序? 如果我有整数值“5,10,3”,我得到3,5,10和

  • 本文向大家介绍Javascript中的几种URL编码方法比较,包括了Javascript中的几种URL编码方法比较的使用技巧和注意事项,需要的朋友参考一下 javascript中存在几种对URL字符串进行编码的方法:escape(),encodeURI(),以及encodeURIComponent()。这几种编码所起的作用各不相同。 escape() 方法:     采用ISO Latin字符集对

  • 问题内容: 我正在尝试使用Java8按名称对员工进行排序,然后按年龄进行排序,我在下面创建了该代码,但它给了我一个编译器错误 但是如果我明确指定类型,它就可以工作 或通过创建两个s和链 我已经在左侧指定了类型,但是为什么自动类型推断没有找到正确的类型并期望明确指定。 有人可以澄清吗? 这是代码 输出 问题答案: Java需要知道所有变量的类型。在许多lambda中,它可以推断类型,但是在您的第一个

  • 问题内容: 基于另一个SO问题,如何检查两个格式正确的XML代码片段在语义上是否相等。我需要的只是“相等”与否,因为我正在将此用于单元测试。 在我想要的系统中,它们是相等的(请注意“开始”和“结束”的顺序): 我可以使用lmxl和其他工具,并且一个仅允许对属性进行重新排序的简单函数也可以正常工作! 基于IanB答案的工作片段: 问题答案: 您可以使用formencode.doctest_xml_c

  • cmf_compare_password($password, $passwordInDb) 功能 CMF密码比较方法,所有涉及密码比较的地方都用这个方法 参数 $password: string 要比较的密码 $passwordInDb: string 数据库保存的已经加密过的密码 返回 boolean 密码相同,返回true