如何在Vala中对字符串进行排序?

时间:2011-12-29 12:55:39

标签: string sorting collections vala

跳出两件事:使用Gee.TreeSet,它总是排序,或者调用Gee.ArrayList.sort。

第一种感觉有点矫枉过正,我找不到另一种文档。什么是最聪明的方法?

1 个答案:

答案 0 :(得分:1)

如果您有阵列,可以尝试使用POSIX qsort function,如下所示:

int cmpfunc(ref string x, ref string y) {
    return Posix.strcmp(x, y);
}
var strs = new string[] {"x", "z", "fred"};
Posix.qsort (strs, strs.length, sizeof(string), (Posix.compar_fn_t) cmpfunc);

并确保使用--pkg posix进行编译。如果为用户排序,您可能希望使用strcoll