HarmonyOS 数组中对象的排序

1、有个对象数组,每个对象中有时间戳,现在需要根据时间戳在数组中进行排序如何实现?

2、基于1的问题,如果是集合中的对象,在集合中如何根据时间排序?

3、数组和集合之间如何来回转换?

HarmonyOS
2024-12-25 12:17:47
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
fox280

通过sort方法排序。可参考示例如下。另外HarmonyOS没有集合的概念,参考官方文档数据类型,只有Array数组,文档地址:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/introduction-to-arkts-V5#%E7%B1%BB%E5%9E%8B

class xx {
  time: number = 0;
  name: string = "";
}

@Entry
@Component
struct ArrayTest {
  build() {
    Row() {
      Column() {
        Button("sort").onClick(() => {
          const arr: xx[] = [
            { time: 1536282400000, name: 'Alice' },
            { time: 1536281200000, name: 'Bob' },
            { time: 1536280400000, name: 'Charlie' },
          ];
          const sortedArr = arr.sort((a, b) => a.time - b.time); //升序排序
          console.log(JSON.stringify(sortedArr));
          const sortedArr2 = arr.sort((a, b) => b.time - a.time); //降序排序
          console.log(JSON.stringify(sortedArr2));
        })
      }.width('100%')
    }.height('100%')
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
分享
微博
QQ
微信
回复
2024-12-25 14:07:47
相关问题
HarmonyOS 对象数组排序问题
807浏览 • 1回复 待解决
ArkTS如何自定义数组对象排序规则
1107浏览 • 1回复 待解决
HarmonyOS 将json对象按照 ASCII 排序
1350浏览 • 1回复 待解决
HarmonyOS 数组对象数据刷新
838浏览 • 1回复 待解决
如何判断一个对象是否在对象数组
3348浏览 • 1回复 待解决
HarmonyOS @State可以修饰对象数组
674浏览 • 1回复 待解决
HarmonyOS 如何对两个对象进行排序
808浏览 • 1回复 待解决
HarmonyOS @state可以修饰对象数组
635浏览 • 1回复 待解决
如何监听数组对象属性变化
3136浏览 • 1回复 待解决
mysql 对于中文+数字排序
4590浏览 • 1回复 待解决