数组_reverse

; 创建对象.
arr := Array("b", "a", "c") ; create an array with 3 
arr.sort := Func("Array_sort")
arr.reverse := Func("Array_Reverse")
arr.join := Func("Array_Join")
arr.len := Func("Array_Length")
arr.insert := Func("Array_Insert")
arr.delete := Func("Array_Delete")
arr.test:=Func("Array_Test")

; 调用方法.
Msgbox, % "直接输出`n" .  arr.join("`n")
Msgbox, % "经test后输出`n" .  arr.test().join("`n")
Msgbox, % "翻转后输出`n" .  arr.reverse().join("`n")   ; 为啥不行 ?
Msgbox, % "排序后输出`n" .  arr.sort().join("`n")
return


Array_Join(arr, sep="`n"){
	Loop, % arr.len()
		str .= arr[A_Index] sep
	StringTrimRight, str, str, % StrLen(sep)
	return str
}
Array_Test(arr){
	arr.insert(2, "xyz")   
	return arr
}
Array_Sort(arr, func="Array_CompareFunc"){
	n := arr.len(), swapped := true
	while swapped {
		swapped := false
		Loop, % n-1 {
			i := A_Index
			if %func%(arr[i], arr[i+1], 1) > 0 ; standard ahk syntax for sort callout functions
				arr.insert(i, arr[i+1]).delete(i+2), swapped := true
		}
		n--
	}
	Return arr
}
Array_CompareFunc(a, b, c){
	return a > b ? 1 : a = b ? 0 : -1
}

Array_Reverse(arr){
	arr2 := Array()
	Loop, % len:=arr.len()
		arr2[len-(A_Index-1)] := arr[A_Index]
	Return arr2
}

Array_Length(arr){
	len := arr._MaxIndex()
	Return len="" ? 0 : len
}
Array_Insert(arr, index, p1="……", p2="……", p3="……", p4="……", p5="……", p6="……"){
	While (_:=p%A_Index%)!="……" && A_Index

给TA捐赠
共{{data.count}}人
人已捐赠
其他

数组(从文件获取的)值输出

2020-3-9 3:04:44

其他

文件列表

2020-3-9 3:06:44

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索