美文网首页
java对英文单词排序

java对英文单词排序

作者: 朝闻道夕睡觉 | 来源:发表于2019-10-09 13:50 被阅读0次

    排序规则:
    先按照单词的长度排序,如果长度一样就按照单词的首字母排序 (两者都为降序)

            //apple,banana,grape,orange
            System.out.println("输入多个单词进行排序(逗号间隔):");
            //从控制台获取输入的英文单词
            String inputStr = new Scanner(System.in).next();
            //将单词用逗号进行分割成数组,然后把数组转换成有序的list(ArrayList)集合
            List<String> sortStrList = Arrays.asList(inputStr.split(","));
            //对英文单词的list进行排序
            sortStrList.sort((k1, k2) ->
                            /**
                             * k1 : 第一个要比较的对象
                             * k2 : 第二个要比较的对象
                             * return:
                             *         正整数->前移单词
                             *         负整数->后移单词
                             */
                            // k1.length() == k2.length()       比较k1的长度和k2的长度
                            // ? k2.charAt(0) - k1.charAt(0)    相等比较字符串的首字母 (根据英文的ASCLL码进行比较大小)
                            // :k2.length() - k1.length()      不相等就比较长度
                            k1.length() == k2.length() ? k2.charAt(0) - k1.charAt(0) : k2.length() - k1.length()
                    //length() 获取一个字符串的长度;  charAt(int index) 获取字符串传入下标值的char类型字符
    
            );
            System.out.println("排序结果:" + sortStrList);
    

    相关文章

      网友评论

          本文标题:java对英文单词排序

          本文链接:https://www.haomeiwen.com/subject/fffgpctx.html