java字符串按长度大小排序

问题描述

java字符串按长度大小排序

由用户自己随意输入不同的字符串,,怎样按输入的字符串长度大小来排序。

解决方案

代码如下


 package Demo;

public class Demo_120901 {
    public static void sortStringArray(String[] arrStr) {
        String temp;
        for (int i = 0; i < arrStr.length; i++) {
            for (int j = arrStr.length - 1; j > i; j--) {
                if (arrStr[i].length() > arrStr[j].length()) {
                    temp = arrStr[i];
                    arrStr[i] = arrStr[j];
                    arrStr[j] = temp;
                }
            }
        }
    }

    public static void main(String[] args) {
        String[] arrStr = { "yours", "am", "I" };
        sortStringArray(arrStr);
        for (int i = 0; i < arrStr.length; i++) {
            System.out.println(arrStr[i]);
        }
    }

}

解决方案二:

接受输入到列表,然后自己写个排序,根据length排就是了,各种排序方法都可以,你只需要改变其中的判断条件就行了

解决方案三:

PB给的答案就可以了。比较字符串长度就行。

解决方案四:

把String类型的数组弄成手动输入赋值就OK了额

解决方案五:

一个比较low的方法
每次输入的时候计算string.length
然后和之前输入的字符串的string从小到大开始比对
第一次找到更大的,就差入这个位置
最后就是从小到大的

解决方案六:

做个数组存一下,来个冒泡排序

解决方案七:

使用string.length()方法获取字符数,然后用冒泡排序。

解决方案八:

先计算每个字符串的长度,然后采用算法排序输出,一半最快的速度log2N居多,所以采用的方法也很有冒泡是其中一种,也是比较适合的一种

解决方案九:

每次算出最大和最小值,最后合并最大和最小列表

时间: 2024-09-03 18:11:10

java字符串按长度大小排序的相关文章

java字符串数组进行大小排序的简单实现_java

若是将两个字符串直接比较大小,会包:The operator > is undefined for the argument type(s) java.lang.String, java.lang.String的错误. 字符串比较大小可以用字符串长度或者是比较字符串内字符的ASCII码值,前者太简单,就不进行讲述记录. 字符串用ASCII码比较大小,规则是: 1.比较首字母的ASCII码大小 2.若是前面的字母相同,则比较之后的字母的ASCII码值 3.若是一个字符串从首字母开始包含另一个字符串

Java字符串排序中文+数字

  思路: 在Java中,排序需要复写的是 equals 方法 和 Comparable<T> 接口 的public int compareTo(T o); 方法 步骤: 1. 使用正则表达式来判断数字,多个连续的数字作为一组, 2. 一次检索出数字组合, 3. 检出下一组数字,如果有,则进入步骤4,否则进入步骤6. 4. 如果两组数字出现的位置相等,并且前面部分的字符串相等,则进入第5步.否则break,跳到第6步. 5. 如果前面部分的字符串完全一致.则比较两个数字的大小,如果大小一致,则

遍历-两个java数组比大小排序

问题描述 两个java数组比大小排序 举个例子,我现在有两个集合数组 A ={32,43,28,3,67,20, 40,0, 59 } B = {3 ,45, 18 ,83 ,30 ,28 ,40,56 ,25} 我要对两个集合数组的大小进行一 一的比较,最后整合到一个大集合数组C中,数字大的排的前面,数字小的在后面,如果AB有数字相同的,那将A组里面的数字排到B前面.求大神帮忙怎么用循环遍历来写这一段代码. 解决方案 上面写成了从小到大排序了,不好意思 public static int[]

java实现归并排序和树形排序(锦标赛制):java字符串分隔或的形式

String[] b=str.split("query|,");//query分隔或者逗号分隔 归并排序,递归实现 public class MergeSort2 { // 对data数组中的 [a,b) 区间的数据进行归并排序, // 排序结束后,[a,b)间数据处于升序有序状态 static void mergeSort(int[] data, int a,int b) { if (a >= b) return; int mid=(a+b)/2;//拆分排序 mergeSor

java替换字符串(字符串总长度有几十万)

问题描述 sss 解决方案 解决方案二:反正不用正则表达式就对了自己写个循环也比正则快解决方案三:正则比较快吧?求高手继续解答!解决方案四:引用2楼tkd03072010的回复: 正则比较快吧?求高手继续解答! 一般没有你自己写循环快.正则的搜索引擎的算法太复杂了.解决方案五:自己写循环吧解决方案六:最好都试试,这样才能学习...对比解决方案七:不就是替换么,直接s.repalce("")不行么?解决方案八:字符串总长度几十万,应该不是一个字符串吧,是多个吧,如果是一个,那就分段喽,.

求求大神帮我-sql 排序 按照文本 和数字大小排序

问题描述 sql 排序 按照文本 和数字大小排序 如果是字段中 是字符串加数字组合成的 怎么把它们按照顺序截取成 字符和数字 放在自己定义的列, 比如说 发文2012.3.4号 截取成 "发文" 放到--col1 "2012.3" 放到 col2 " ." 放到 col3 "4" 放到col4 "号" 放到 col5 截取不了那么多列就留空 ,然后排序 解决方案 找到规律,用正则表达式来截取. 解决方案二:

Java字符串之性能优化

转自:http://it.deepinmind.com/categories.html 基础类型转化成String 在程序中你可能时常会需要将别的类型转化成String,有时候可能是一些基础类型的值.在拼接字符串的时候,如果你有两个或者多个基础类型的值需要放到前面,你需要显式的将第一个值转化成String(不然的话像System.out.println(1+'a')会输出98,而不是"1a").当然了,有一组String.valueOf方法可以完成这个(或者是基础类型对应的包装类的方法

关于java字符串去重的问题

问题描述 关于java字符串去重的问题 今天碰到个java字符串去重的问题,尝试着用另一种方法TreeSet去做一下,出来的结果确实去重了,但是会按abcd的顺序排列,而不是给定的字符串顺序.问一下怎么纠正? public void Method_2(String str) { // 原始输入 System.out.println("原始的字符串:" + str); long startTime = System.nanoTime(); // 将输入转为字符串数组 String[] a

Java字符串拼接效率分析及最佳实践

本文来源于问题 Java字符串连接最佳实践? java连接字符串有多种方式,比如+操作符,StringBuilder.append方法,这些方法各有什么优劣(可以适当说明各种方式的实现细节)? 按照高效的原则,那么java中字符串连接的最佳实践是什么? 有关字符串处理,都有哪些其他的最佳实践? 废话不多说,直接开始, 环境如下: JDK版本: 1.8.0_65 CPU: i7 4790 内存: 16G 直接使用+拼接 看下面的代码: @Test      public void test() {