黑马程序员技术交流社区

标题: java 键盘输入字符串,将字符串按长度排序 [打印本页]

作者: M_______r    时间: 2014-11-27 16:41
标题: java 键盘输入字符串,将字符串按长度排序
package cn.itcast.demo;

import java.util.Comparator;
import java.util.Scanner;
import java.util.TreeSet;

public class Demo8 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入:");
        while (true) {
            String line = sc.nextLine();
            if ("quit".equals(line)) {
                break;
            }else{
                sort(line);
            }
        }        
    }

    public static void sort(String line) {
        TreeSet<String> ts = new TreeSet<>(new Comparator<String>() {

            @Override
            public int compare(String s1, String s2) {
                int num = s1.length() - s2.length();
                return num == 0 ? 1 : num;
            }
        });
        ts.add(line);
        System.out.println(ts);
    }
}


写到这不会写了 想了很久不会啊  真实越学越后退 求 大神指导


作者: M_______r    时间: 2014-11-27 16:49
晕 我做出来了。。。

package cn.itcast.demo;

import java.util.Comparator;
import java.util.Scanner;
import java.util.TreeSet;

public class Demo8 {

    /**
     * @param args
     */
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入:");
        TreeSet<String> ts = new TreeSet<>(new Comparator<String>() {
            
            @Override
            public int compare(String s1, String s2) {
                int num = s1.length() - s2.length();
                return num == 0 ? s1.compareTo(s2) : num;
            }
        });
        while (true) {
            String line = sc.nextLine();
            if ("quit".equals(line)) {
                break;
            }else{
                ts.add(line);
            }
        }
        System.out.println(ts);
    }   
}






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2