zoukankan      html  css  js  c++  java
  • 代码实现从键盘接收一个字符串, 程序对其中所有字符进行排序,例如键盘输入: helloitcast程序打印:acehillostt

    package com.loaderman.test;
    
    import java.util.Comparator;
    import java.util.Scanner;
    import java.util.TreeSet;
    
    public class Test {
    
    	/**
    	 * 从键盘接收一个字符串, 程序对其中所有字符进行排序,例如键盘输入: helloitcast程序打印:acehillostt
    	 * 分析:
    	 * 1,键盘录入字符串,Scanner
    	 * 2,将字符串转换为字符数组
    	 * 3,定义TreeSet集合,传入比较器对字符排序并保留重复
    	 * 4,遍历字符数组,将每一个字符存储在TreeSet集合中
    	 * 5,遍历TreeSet集合,打印每一个字符
    	 */
    	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);
    		}
    	}
    
    }
    
  • 相关阅读:
    MySQL InnoDB 锁
    MySQL InnoDB 事务
    MySQL 执行计划详解
    php获取当前url地址的方法小结
    数据库联表统计查询 Group by & INNER JOIN
    大文件分片上传,断点续传,秒传 实现
    如何让 height:100%; 起作用
    移动前端头部标签(HTML5 head meta)
    Emoji表情符号在MySQL数据库中的存储
    HTML页面直接显示json 结构
  • 原文地址:https://www.cnblogs.com/loaderman/p/6516511.html
Copyright © 2011-2022 走看看