一个JAVA排序问题

问题描述

publicstaticvoidmain(String[]args){Listlist=newArrayList();list.add("亞洲冠軍盃特別投注");list.add("亞洲冠軍盃");list.add("亞洲足聯盃");list.add("亞洲足聯盃特別投注");list.add("法國聯賽U19");list.add("法國聯賽U19特別投注");list.add("土耳其A2聯賽U19");list.add("馬來西亞超級聯賽特別投注");list.add("馬來西亞超級聯賽");for(inti=0;i<list.size();i++){System.out.println(list.get(i));}}我想要的是比如:“亞洲冠軍盃特別投注”就放在“亞洲冠軍盃”的后面。而如果比如:“亞洲冠軍盃特別投注”在“亞洲冠軍盃”的后面的话就不用动,还是在原来的位置不变,别的也不变。只是要特別投注在相应赛事的后面

解决方案

解决方案二:
有人来帮帮忙不
解决方案三:
这个不是字符串长度不一样么互换下就好了记得匹配下前面几个字符串是否一样
解决方案四:
publicstaticvoidmain(String[]args){Listlist=newArrayList();list.add("亞洲冠軍盃特別投注");list.add("亞洲冠軍盃");list.add("亞洲足聯盃");list.add("亞洲足聯盃特別投注");list.add("法國聯賽U19");list.add("法國聯賽U19特別投注");list.add("土耳其A2聯賽U19");list.add("馬來西亞超級聯賽特別投注");list.add("馬來西亞超級聯賽");Collections.sort(list);for(inti=0;i<list.size();i++){System.out.println(list.get(i));}}

解决方案五:
这样不行我试过了
解决方案六:
写个比较器publicclassComimplementsComparator<String>{@Overridepublicintcompare(Stringo1,Stringo2){if(o1.contains(o2)&&o1.contains("特別投注")){return-1;}return0;}publicstaticvoidmain(String[]args){List<String>list=newArrayList<String>();list.add("亞洲冠軍盃特別投注");list.add("亞洲冠軍盃");list.add("亞洲足聯盃");list.add("亞洲足聯盃特別投注");list.add("法國聯賽U19");list.add("法國聯賽U19特別投注");list.add("土耳其A2聯賽U19");list.add("馬來西亞超級聯賽特別投注");list.add("馬來西亞超級聯賽");Collections.sort(list);for(inti=0;i<list.size();i++){System.out.println(list.get(i));}}}
解决方案七:
List<String>list=newArrayList<String>();list.add("亞洲冠軍盃特別投注");list.add("亞洲冠軍盃");list.add("亞洲足聯盃");list.add("亞洲足聯盃特別投注");list.add("法國聯賽U19");list.add("法國聯賽U19特別投注");list.add("土耳其A2聯賽U19");list.add("馬來西亞超級聯賽特別投注");list.add("馬來西亞超級聯賽");Stringstr1=null;Stringstr2=null;for(inti=1;i<list.size();i++){str1=list.get(i-1);str2=list.get(i);if(str1.matches(str2+"....")){list.set(i-1,str2);list.set(i,str1);}}for(inti=0;i<list.size();i++){System.out.println(list.get(i));}
解决方案八:
importjava.util.ArrayList;importjava.util.Collections;importjava.util.List;publicclassTest{publicstaticvoidmain(String[]args){Listlist=newArrayList();list.add("亞洲冠軍盃特別投注");list.add("亞洲冠軍盃");list.add("亞洲足聯盃");list.add("亞洲足聯盃特別投注");list.add("法國聯賽U19");list.add("法國聯賽U19特別投注");list.add("土耳其A2聯賽U19");list.add("馬來西亞超級聯賽特別投注");list.add("馬來西亞超級聯賽");Collections.sort(list);//使用Collections实用工具里的排序函数进行排序for(inti=0;i<list.size();i++){System.out.println(list.get(i));}}}

解决方案九:
又是字符串的比较呀。。。。
解决方案十:
5楼写的不错,只是在排序时没有使用比较器。
解决方案十一:
统统转成utf-8码再去排,5楼方法就可以
解决方案十二:
使用外部比较器
解决方案十三:
List本来就是有顺序的,怎么进去,出来时顺序不变(前提没有sort)

时间: 2024-08-04 18:25:40

一个JAVA排序问题的相关文章

sql-我要写一个java程序,去链接oracle数据库,如果获取链接的时间超过1分钟,就抛出异常,请问怎么实现?

问题描述 我要写一个java程序,去链接oracle数据库,如果获取链接的时间超过1分钟,就抛出异常,请问怎么实现? 我要写一个java程序,去链接oracle数据库,如果获取链接的时间超过1分钟,就抛出异常,请问怎么实现? 解决方案 http://blog.chinaunix.net/uid-20752328-id-3451931.html 这里有一篇文章可以解决你的问题你可以点击进去看看; 如果回答对您有帮助请采纳 解决方案二: 说明数据整理不合理吧 解决方案三: 你应该优化数据库结构,或你

编译-一个java新手在编程路上遇到的问题

问题描述 一个java新手在编程路上遇到的问题 路过的大牛瞄一眼,谢谢...大一学生一枚,java学到网络编译了,最近在实现ftp服务器,目前还没写出来,心情十分郁闷,我觉得自己要成为编程员的随机应变能力还不够,编程路上的困惑,曾经也遇过类似状况求个回复. 解决方案 没什么,大一的时候让我自己去实现一个ftp服务器,我也觉得挺困难的.所以你要上大学啊. 解决方案二: 困惑:坚持.不会:学习.前排 解决方案三: 任何知识都有一个主干,首先要了解基本的原理,然后再学习细节.如果你是自学,一定要注意这

java-求一个Java实现的卡尔曼滤波算法

问题描述 求一个Java实现的卡尔曼滤波算法 现在做一个无线的定位系统,求一个Java实现的卡尔曼滤波算法 解决方案 参考:http://blog.csdn.net/ouyang_linux007/article/details/7563998http://download.csdn.net/detail/daibinok2008/4175968 解决方案二: https://code.google.com/p/efficient-java-matrix-library/wiki/KalmanF

服务器-这些因素如何影响一个java web网站的并发数

问题描述 这些因素如何影响一个java web网站的并发数 服务器tomcat:最大连接数(maxThreads)和(acceptCount) 缓存redis:最大连接数(maxActive).最大空闲连接数(maxIdle) 数据源c3p0:最大连接数(maxPoolSize) 请教大牛解释这些参数和整个web网站并发数的关系

生成一个java编制的可执行文件

执行 将java编织成.class后,如果只是用java 命令来执行总觉得不是太过瘾,找个办法生成像exe文件一样用鼠标双击便可执行的文件,应该是很有趣的啊.本文主要介绍了一种生成java可执行程序的方法.这里我用了一个名字叫做exe4j的免费小软件,感觉不错.下面我将我把java的.class文件生成可执行文件的流程讲一下.首先:将你要选择好你即将发布的.class文件就不用细说了,下面是创建jar文件,这里我用一个名字叫做test.class的文件来举例,另外注意还要编写一个确定main_c

通过一个Java应用服务器使用JRuby on Rails和XML增强Ajax

Ruby on Rails 框架提供了一些非常方便的 XML 特性,这使使用数据库数据 进行开发和为 JavaScript 应用程序提供 XML 格式的数据库数据变得更加简单 .JavaScript 还具有内置的 XML 解析功能,因此可以非常轻松地接收和解析 XML 格式的数据.但是,如果要在不部署额外服务器的情况下接入 Java 应用程序,该如何做呢?这正是 JRuby 的工作.JRuby on Rails 是 Ruby on Rails 框架的 Java 实现,通过将 Ruby 应用程序部

我们的第一个Java程序

最后,让我们正式编一个程序(注释⑤).它能打印出与当前运行的系统有关的资料,并利用了来自Java标准库的System对象的多种方法.注意这里引入了一种额外的注释样式:"//".它表示到本行结束前的所有内容都是注释:   // Property.java import java.util.*; public class Property { public static void main(String[] args) { System.out.println(new Date()); P

用JavaHelp 2.0构建下一个Java应用程序的帮助系统

简介:即使是帮助系统设计师有时也可能需要帮助,有了 JavaHelp 2.0,终 于可以提供帮助了.在本文中,将介绍如何使用 Java 平台特有的帮助系统 API 构建一个标准的.全功能的.容易使用的系统,以向 Java 应用程序用户展 示 在线信息. 从开发者的角度看,自动化的帮助组件,或者帮助系统,通常是在构建一个 Java 应用程序时最后考虑的事情.不过对于用户来说,帮助系统是学习新应用 程序时非常有价值的资源.随着对功能更全和更可靠的应用程序帮助系统的需求 增加,应用程序开发人员的时间和

创建一个Java应用数据库的桌面应用程序

本教程将展示如何创建一个 Java 的桌面应用程序,用来访问以及更新数据库.本教程利用 NetBeans IDE 6.0 支持的以下技术: Java 持久化 API (JPA),帮助你使用Java 代码来与数据库接合 Beans 绑定技术 (JSR 295) ,为不同的JavaBeans 控件提供一种方式来相互同步属性值.举一个例子, 你可以使用 Beans 绑定技术来保持 JTable 可视化控件中各单元的值与实体类中各域的值同步.(在这里,实体类表示数据表) Swing 应用程序框架 (JS