ruby 数组array 排序sort 和sort!
Returns a new array created by sorting self.
Comparisons for the sort will be done using the <=> operator or using an optional code block.
The block must implement a comparison between a and b, and return -1, when a follows b, 0 when a and b are equivalent, or +1 if b follows a.
See also Enumerable#sort_by.
a = [ "d", "a", "e", "c", "b" ]
a.sort #=> ["a", "b", "c", "d", "e"]
a.sort { |x,y| y <=> x } #=> ["e", "d", "c", "b", "a"]
a.sort { |x,y| x <=> Y }  #=> ["a", "b", "c", "d", "e"]
2.
Sorts self in place.
Comparisons for the sort will be done using the <=> operator or using an optional code block.
The block must implement a comparison between a and b, and return -1, when a follows b, 0 when a and b are equivalent, or +1 if b follows a.
See also Enumerable#sort_by.
a = [ "d", "a", "e", "c", "b" ]
a.sort! #=> ["a", "b", "c", "d", "e"]
a.sort! { |x,y| y <=> x } #=> ["e", "d", "c", "b", "a"] 参考链接:http://www.ruby-doc.org/core-2.0/Array.html#method-i-sort 3.sort和sort!的区别: sort和sort!函数,默认都使用 <=>比较,他们的区别在于:
sort! 可能会改变原先的数组,所以加个感叹号提醒
sort 返回的是新数组,没对原先的数组进行修改
在ruby的SDK里,能看到很多加了感叹号的函数,都意味着对函数操作的对象进行了状态更改。
ruby 数组array 排序sort 和sort!的更多相关文章
- js中数组Array对象的方法sort()的应用
		
一. sort()方法的介绍 //给一组数据排序 var arrNum = [12,1,9,23,56,100,88,66]; console.log("排序前的数组:"+arrN ...
 - javascript 数组Array排序
		
var numberAry = [9,9,10,8,7,80,33,55,22]; numberAry.sort(); /*输出:10,22,33,55,7,8,80,9,9 上面的代码没有按照数值的 ...
 - 雷林鹏分享:Ruby 数组(Array)
		
Ruby 数组(Array) Ruby 数组是任何对象的有序的.整数索引的集合.数组中的每个元素都与一个索引相关,并可通过索引进行获取. 数组的索引从 0 开始,这与 C 或 Java 中一样.一个负 ...
 - 数组Array的一些方法
		
数组对象属性和方法的概述:1> arr.push() 将参数添加至数组的末尾,返回的是新数组的长度2> arr.unshift() 将参数添加到数组的开头,返回新数组的长度3> ar ...
 - Array 数组的排序 sort
		
JavaScript实现多维数组.对象数组排序,其实用的就是原生的sort()方法,用于对数组的元素进行排序.sort() 方法用于对数组的元素进行排序.语法如下:arrayObject.sort(s ...
 - php 多维数组 array sort  排序 :array_multisort
		
1.参考链接: php简单实现多维数组排序的方法 参考二: 这个链接很好,可以直接看这个:PHP array_multisort—对多个数组或多维数组进行排序 2.案例一: //13: 最佳: pub ...
 - JavaScript 使用 sort() 方法从数值上对数组进行排序
		
使用 sort() 方法从数值上对数组进行排序. <html> <body> <script type="text/javascript"> f ...
 - 41.把数组排成最小的数[Sort array to smallest value]
		
[题目] 输入一个正整数数组,将它们连接起来排成一个数,输出能排出的所有数字中最小的一个.例如输入数组{3,32, 321},则输出这两个能排成的最小数字321323.请给出解决问题的算法,并证明该 ...
 - js中的数组Array定义与sort方法使用示例
		
Array的定义及sort方法使用示例 Array数组相当于java中的ArrayList 定义方法: 1:使用new Array(5 )创建数组 var ary = new Array(5): ...
 
随机推荐
- Django:locals()小技巧
			
locals()返回一个包含当前作用域里面的所有变量和它们的值的字典. 所以可以把views改写为 def current_datetime(request): current_date = ...
 - 【Lintcode】103.Linked List Cycle II
			
题目: Given a linked list, return the node where the cycle begins. If there is no cycle, return null. ...
 - EntityFramework  Code First 构建外键关系,数据库不生成外键约束
			
创建 ExtendedSqlGenerator类 public class ExtendedSqlGenerator : SqlServerMigrationSqlGenerator { #regio ...
 - C++ 创建文件的方法
			
CString getPath(){ CTime time = CTime::GetCurrentTime(); CString t = time.Format(_T("%Y%m%d%H%M ...
 - noip2013提高组:积木大赛
			
题目描述 春春幼儿园举办了一年一度的“积木大赛”.今年比赛的内容是搭建一座宽度为n的大厦,大厦可以看成由n块宽度为1的积木组成,第n块积木的最终高度需要是hi. 在搭建开始之前,没有任何积木(可以看成 ...
 - sgu 321 The Spy Network (dfs+贪心)
			
321. The Spy Network Time limit per test: 0.5 second(s)Memory limit: 65536 kilobytes input: standard ...
 - JavaWeb_打包web应用war
			
使用下面的语句进行打包 jar -cvf aa.war news 打包之后的文件可以直接放在tomcat的webapps里面,一旦启动tomcat,会自动解压aa.war文件.
 - Kubernetes 集群日志管理
			
Kubernetes 开发了一个 Elasticsearch 附加组件来实现集群的日志管理.这是一个 Elasticsearch.Fluentd 和 Kibana 的组合.Elasticsearch ...
 - 获得HttpWebResponse请求的详细错误内容
			
try { } catch (WebException ex) { HttpWebResponse response = (HttpWebResponse)ex.Response; Console.W ...
 - Weekly Contest 113
			
949. Largest Time for Given Digits (string::compare) Given an array of 4 digits, return the largest ...