lua下table.sort 的排序问题

arr={2,3,4,3,2,4,5,3,2,3,10}table.sort(arr,function(aa,bb)ifaa>bbthenreturnaaelseretu... arr = {2,3,4,3,2,4,5,3,2,3,10}

table.sort(arr, function (aa,bb)
if aa > bb then return aa
else return bb --1.加了这行,就报错了为啥
end
end)

for _,v in ipairs(arr) do print(v) end

2.为何可以写成
table.sort(arr, function (aa,bb)
return aa>bb
end)

aa>bb 这里不是 返回的 ture 或者 false 么
展开
 我来答
策马长春Q
2014-11-03 · 超过25用户采纳过TA的回答
知道答主
回答量:68
采纳率:0%
帮助的人:48.1万
展开全部
table.sort(arr, fun(a,b))这里面的函数就是要返回一个Boolean值,如果是这样 return a>b那么就将a排前面,也就是升序
追问
那为何加了   else  return bb  --1.加了这行,就报错了为啥??
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式