arraylist 内元素 排序

问题描述

ArrayListal=newArrayList();al.AddRange(newstring[6]{"A1","A2","A11","A12","A13","A3"});al.Sort();重新生成的数组为:["A1","A11","A12","A13","A2","A3"]而我想要的结果是:["A1","A2","A3","A11","A12","A13"]请我,该怎么排序啊啊啊啊,急!!!1

解决方案

解决方案二:
传递一个IComparer接口,定义自己的规则(将后面的数字比较大小)
解决方案三:
varquery=al.ToArray().OrderBy(a=>int.Parse(Regex.Match(a.ToString(),"\d+").Value));
解决方案四:
引用2楼q107770540的回复:

varquery=al.ToArray().OrderBy(a=>int.Parse(Regex.Match(a.ToString(),"\d+").Value));

请教下返回的query是什么类型数据数组?
解决方案五:
正确做法还是应该用1楼所说的方式:
解决方案六:
如果对于这样一个数组,该这么样排序ArrayListal=newArrayList();al.AddRange(newstring[6]{"A1","A2","A11","A12","A13","A3","B1","B2"});想要生成这样一个顺序:["A1","A2","A3","A11","A12","A13","B1","B2"]
解决方案七:
引用4楼q107770540的回复:

正确做法还是应该用1楼所说的方式:http://msdn.microsoft.com/zh-cn/library/0e743hdt(v=vs.80).aspx

怎样定义一个IComparer
解决方案八:
引用4楼q107770540的回复:

正确做法还是应该用1楼所说的方式:http://msdn.microsoft.com/zh-cn/library/0e743hdt(v=vs.80).aspx

mark..
解决方案九:
有一个Sort()方法,可以直接对集合排序
解决方案十:
引用1楼caozhy的回复:

传递一个,定义自己的规则(将后面的数字比较大小)

ArrayListal=newArrayList();al.AddRange(newstring[6]{“B3","A1","A2","A11","A12","A13","A3","B1","B2"});怎样定义一个IComparer,使ArrayList内元素的数组的顺序为:["A1","A2","A3","A11","A12","A13","B1","B2",”B3“]
解决方案十一:
本帖最后由 caozhy 于 2012-01-12 16:48:20 编辑
解决方案十二:
顶楼上
解决方案十三:
10楼的是对的
解决方案十四:
mark

时间: 2024-07-28 16:50:02

arraylist 内元素 排序的相关文章

Java ArrayList 的不同排序方法

由于其功能性和灵活性,ArrayList是 Java 集合框架中使用最为普遍的集合类之一.ArrayList 是一种 List 实现,它的内部用一个动态数组来存储元素,因此 ArrayList 能够在添加和移除元素的时候进行动态的扩展和缩减.你可能已经使用过 ArrayList,因此我将略过基础部分.如果你对 ArrayList 还不熟悉,你可以参考它的 API 文档,可以很容易理解在 ArrayList 上执行基本的操作. 在这篇文章中,我将讨论ArrayList中一种极其重要的操作,你很有可

C++ 数组内元素互换的简单问题

问题描述 C++ 数组内元素互换的简单问题 //输入10个整数,将其中最小的数与第一个数交换,把最大的数与最后一个数交换.用指针实现int main() { int a[10]; int *max*min*ptemp; cout<<""输入10个数""; for (int i=0;i<10;i++) cin>>a[i]; max=min=a; for(p=a+1;p<a+10;p++) if(*p>*max) max=p;

Java ArrayList的不同排序方法_java

由于其功能性和灵活性,ArrayList是 Java 集合框架中使用最为普遍的集合类之一.ArrayList 是一种 List 实现,它的内部用一个动态数组来存储元素,因此 ArrayList 能够在添加和移除元素的时候进行动态的扩展和缩减.你可能已经使用过 ArrayList,因此我将略过基础部分.如果你对 ArrayList 还不熟悉,你可以参考它的 API 文档,可以很容易理解在 ArrayList 上执行基本的操作. 在这篇文章中,我将讨论 ArrayList 中一种极其重要的操作,你很

javase-调用方法和方法内元素问题

问题描述 调用方法和方法内元素问题 import java.util.*; public class AA { public static void main(String[] args) { BB b = new BB(); b.print(); } public static void sop(Object obj) { System.out.println(obj); } } class BB { public void print1() { int[] arr = {1,2,3,4};

[HTML/CSS]盒子模型,块级元素和行内元素

目录 概述 盒子模型 块级元素 行内元素 可变元素 总结 概述 在div+css中,了解块级元素和行内元素还是非常有必要的,比如:对行内元素使用width属性就会失效.虽然自己不是做前端的,但是,在项目中,曾经也弄过从前端布局,也吃过这方面的亏.今天,群里有朋友问起这个,就趁着学习一下,也算是查漏补缺吧,虽然,谈不上精通,但是了解,还是很有必要的. 盒子模型 css盒子模型分为两种,一种是遵循w3c标准的标准盒子模型,另外一种就是IE盒子模型. 标准盒子模型 IE盒子模型 通过上面两张图可以看出

CSS网页制作教程:display属性行内元素和块级元素

文章简介:内联(行内)元素.块级元素区别. A:行内就是在一行内的元素,只能放在行内:块级元素,就是一个四方块,可以放在页面上任何地方. B:说白了,行内元素就好像一个单词:块级元素就好像一个段落,如果不另加定义的话,它将独立一行出现.C:一般的块级元素诸如段落<p>.标题<h1><h2>....列表,<ul><ol><li> .表格<table>.表单<form>.DIV<div>和BODY<

CSS块元素和行内元素的相互转换

块元素和行内元素可以使用display进行相互转换 display:inline ->转为行内元素(例如div) display:block ->转为块元素(例如a) 例: <html> <head> <title>块元素和行内元素的相互转换</title> <link rel="stylesheet" style="text/css" href="test.css" />

Css块内元素和行内元素

行内元素(inline element),又叫内联元素: 内联元素可容纳文本或者其它内联元素,常见的内联元素有<span>.<a>.<input>. 块元素(block element): 块元素一般都从新行开始,可以容纳文本.其它内联元素和其它块元素. 即使内容不满一行,块元素也要把整行占满,而且会换行显示,常见的块元素有<div>.<p>. 某些CSS属性可能对行内元素不生效,这与浏览器的版本和类型有关, 因此,要尽可能使用块元素定位. 例:

php对数组内元素进行随机调换的方法

  本文实例讲述了php对数组内元素进行随机调换的方法.分享给大家供大家参考.具体分析如下: 这是一个自定义的php数组元素随机调换的函数,php已经有一个内置的同样功能的函数shuffle($Array),这个代码权当参考 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 // I noticed that there is already a built-in function that // does t