ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

JAVA基础(TreeSet按字母进行排序)

2019-07-02 09:22:54  阅读:630  来源: 互联网

标签:字符 JAVA Scanner 集合 num 字符串 排序 TreeSet


1,需求

  • 从键盘接收一个字符串, 程序对其中所有字符进行排序,例如键盘输入: helloitcast程序打印:acehillostt

 

2,分析:

  • 键盘录入字符串,Scanner

  • 将字符串转换为字符数组

  • 定义TreeSet集合,传入比较器对字符排序并保留重复

  • 遍历字符数组,将每一个字符存储在TreeSet集合中

  • 遍历TreeSet集合,打印每一个字符


 

import java.util.Comparator;

import java.util.Scanner;

import java.util.TreeSet;

public class Test5 {

    public static void main(String[] args) {

        //1,键盘录入字符串,Scanner

        Scanner sc = new Scanner(System.in);

        System.out.println("请输入一个字符串");

        String line = sc.nextLine();

        //2,将字符串转换为字符数组

        char[] arr = line.toCharArray();

        //3,定义TreeSet集合,传入比较器对字符排序并保留重复

        TreeSet<Character> ts = new TreeSet<>(new Comparator<Character>() {





            @Override

            public int compare(Character c1, Character c2) {

                //int num = c1 - c2;                //自动拆箱

                int num = c1.compareTo(c2);

                return num == 0 ? 1 : num;

            }

        });

        

        //4,遍历字符数组,将每一个字符存储在TreeSet集合中

        for(char c : arr) {

            ts.add(c);                            //自动装箱

        }

        

        //5,遍历TreeSet集合,打印每一个字符

        for(Character c : ts) {

            System.out.print(c);

        }

    }





}

 

 

标签:字符,JAVA,Scanner,集合,num,字符串,排序,TreeSet
来源: https://blog.csdn.net/Cricket_7/article/details/94429866

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有