zoukankan      html  css  js  c++  java
  • [原]Java面试题-将字符串中数字提取出来排序后输出

    【Title】[原]Java面试题-将字符串中数字提取出来排序后输出
    【Date】2013-09-15
    【Abstract】很简单的面试题,要求现场在纸上写出来。
    【Keywords】面试、Java、排序
    【Environment】Windows 7 、 JDK6
    【Author】wintys (wintys@gmail.com) http://wintys.cnblogs.com
    【URL】http://www.cnblogs.com/wintys/p/jobinterview_extractdigit.html

    【Content】:

    1、题目

         给定一个String s = "7#3###5#3#9##1";取出数字排序后输出。

    2、解答

            import java.util.Arrays;
            import java.util.Comparator;

            public class DigitExtract {
                public static void main(String[] args) {
                    String s = "7#3###5#3#9##1";
                    int[] digit = new int[s.length()];
                    char c;
                    int j = 0;

                    for(int i =0; i < s.length(); i++){
                        c = s.charAt(i);
                        if( Character.isDigit(c)){
                            digit[ j++ ] = Character.digit(c, 10);
                        }
                    }
                    //从小到大排序
                    Arrays.sort( digit , 0 , j);
                    //如果要从大到小排序,使用自定义的DigitComprarator,并且将digit数组改为Integer
                    //Arrays.sort( digit, 0 , j, new DigitComparator());
                    
                    for(int i =0; i < j; i++){
                        System.out.print(digit[i] + " ");
                    }
                }
            }

            class DigitComparator implements Comparator<Integer>{
                @Override
                public int compare(Integer a, Integer b) {
                    return b - a;
                }
            }
    作者:wintys (wintys@gmail.com)  出处:http://wintys.cnblogs.com   欢迎转载,转载请注明作者及出处。
  • 相关阅读:
    ConcurrentHashMap get方法保持同步的解释
    HashMap resize导致死循环
    ConcurrentHashMap原理详解
    单列索引和联合索引区别
    优先队列
    大根堆排序
    小根堆排序
    基础哈夫曼树-最简单的
    二叉查找树
    二叉查找树
  • 原文地址:https://www.cnblogs.com/wintys/p/jobinterview_extractdigit.html
Copyright © 2011-2022 走看看