日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

UNITY 中List.Sort的BUG

發布時間:2025/3/18 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 UNITY 中List.Sort的BUG 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

UNITY 中List.Sort的BUG

List<int> lst = new List<int>();lst.Add(202);lst.Add(20);lst.Add(40);lst.Add(230);lst.Add(220);lst.Add(240);lst.Sort((m1, m2) =>{return m1 > m2 ? 1 : -1;});


如上這段排序代碼,在VS2015控制臺程序下運行,排序完全正確。

然而放在UNITY的Start()函數中運行,排序只排了前兩個元素。

原因竟然是UNTIY 的BUG:排序函數必須返回 1,0,-1三種情況,只返回兩種情況則排序不正確。

然而普通C#控制臺程序是沒有問題的,可見UNITY有多坑。

保證UNITY上排序正確的寫法如下:

void Start () {List<int> lst = new List<int>();lst.Add(202);lst.Add(20);lst.Add(40);lst.Add(230);lst.Add(220);lst.Add(240);lst.Sort((m1, m2) =>{if (m1 > m2)return 1;if (m1 < m2)return -1;return 0;

         //return m1.CompareTo(m2); //或者這樣寫

});}

?

posted on 2017-06-06 18:21 時空觀察者9號 閱讀(...) 評論(...) 編輯 收藏

總結

以上是生活随笔為你收集整理的UNITY 中List.Sort的BUG的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。