按日期在领域中排序

问题描述 投票:0回答:1

我想按日期对信息进行排序。例如,数据格式为:2017年11月10日。我正在尝试如下操作:

RealmResults<ResultFavorite> resultFavoritesReleaseDate = realm.where(ResultFavorite.class).sort("releaseDate", Sort.DESCENDING).findAll();

但是它不起作用。查询中的fieldName是一个字符串。

android realm realm-mobile-platform
1个回答
0
投票

[当您说'它不起作用'时,我假设实际上是[[are记录已排序,但以字符串降序而不是日期顺序排序。

我可以看到两个选项。

首先,Date是受支持的Realm字段类型,因此您可以将字段更改为该类型(或可选:如果使用Kotlin,则为Date?)。您的查询应该可以正常工作。这将是首选解决方案。

第二个选项不太好用,但是如果您无法更改字段类型,则必须使用。在这种情况下,您将需要查询所有对象,然后将结果类型映射到数组,然后使用Java或Kotlin排序例程进行排序。排序条件将是从字符串到日期的转换。就内存使用而言,这也是缓慢且低效的。

© www.soinside.com 2019 - 2024. All rights reserved.