Articles of sorting

Android比较特殊字母

有没有办法在Android中正确sorting国际string? 我使用自定义比较器和compareTo()方法,但这对我来说还不够。 我想要这样的字母“ö”显示在“o”附近,但是他们都在列表的末尾。 我怎么能迫使比较者认为他们类似于“o,a等…”?

Android比较器类的rxjavasorting列表

我开始用我的android项目使用rxjava。 我需要从api调用中sorting返回事件列表。 我写了比较类来sorting列表: public class EventParticipantComparator { public static class StatusComparator implements Comparator<EventParticipant> { @Override public int compare(EventParticipant participant1, EventParticipant participant2) { return participant1.getStatus() – participant2.getStatus(); } } } 我可以使用这个类与经典的集合类。 Collections.sort(participants, new EventParticipantComparator.StatusComparator()); 我怎样才能以反应的方式来实现这种情况? 如果有任何方法asynchronoussorting列表,我会更喜欢这种方式。 没有sorting列表的反应方式: dataManager.getEventImplementer().getParticipants(event.getId()) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe(new Subscriber<List<EventParticipant>>() { @Override public void onCompleted() { } @Override public void onError(Throwable e) { } […]

数据sorting的最佳方法

在我的Android应用程序中,我必须使用从数据库中获取的数据填充一个数组列表对象。 数据也应该sorting。 所以我有两种方法。 使用SQL从数据库中取出数据进行sorting并放入数组中 从数据库中获取数据并将其放入数组中 ,稍后再读取数据 在这些方面效率更高 ,对运行时影响更小。 需要一些帮助。 谢谢!

Android:SortedList与重复

理解RecyclerView的SortedList有一些问题。 比方说,我有一个非常简单的类只有一个非常简单的类持有数据: public class Pojo { public final int id; public final char aChar; public Pojo(int id, char aChar) { this.id = id; this.aChar = aChar; } @Override public String toString() { return "Pojo[" + "id=" + id + ",aChar=" + aChar + "]"; } } 我的理解是,sorting列表将不会包含任何重复。 但是当我有一个SortedList这样的callback: …. @Override public boolean areContentsTheSame(Pojo oldItem, Pojo […]

Alphabatize安装的应用程序的列表

嗨,我跟着下面的教程,并成功地列出我的应用程序中的所有我安装的应用程序 列出所有已安装的应用程式 但是,它没有按字母顺序排列,我也不知道如何排列它们。 任何帮助,将不胜感激。 我已经尝试了一些这样的事情 class IgnoreCaseComparator implements Comparator<String> { public int compare(String strA, String strB) { return strA.compareToIgnoreCase(strB); } } IgnoreCaseComparator icc = new IgnoreCaseComparator(); java.util.Collections.sort(SomeArrayList,icc); 但无法弄清楚如何将其应用到应用程序列表标题。 感谢您的帮助 ===编辑=== 感谢您的回复,我做了以下,但有sorting错误。 错误读取“types集合中的方法sort(List,Comparator)不适用于参数(List,ApplicationInfo.DisplayNameComparator)” private List<App> loadInstalledApps(boolean includeSysApps) { List<App> apps = new ArrayList<App>(); PackageManager packageManager = getPackageManager(); List<PackageInfo> packs = packageManager.getInstalledPackages(0); for(int i=0; i < packs.size(); […]

如何在Android RecyclerView上对string进行sorting?

我有一个recyclerView充满CardViews有2个参数(他们都是string),其中之一是一个标题,我想有一个button,按字母顺序sorting他们的基础上。 因为它没有太多的元素,我决定使用插入sorting是o(n ^ 2),这是我的实现: public void ISortDes(String[]strings){ int j; String key; int i; for (j = 1; j < strings.length; j++) { key = strings[ j ]; for(i = j – 1; (i >= 0) ; i–) { if (key.compareTo(strings[i]) > 0){ break; } strings[ i+1 ] = strings[ i ]; } strings[ i+1 ] […]

Android按距离重新sorting适配器

我试图重新sorting我的项目列表(使用android getListView,而不是自定义)的距离,我有问题。 我使用适配器内部的地图实用程序(SomeAdapter)获取以米为单位的球面距离(双倍)。 double distance = SphericalUtil.computeDistanceBetween(fromCoord, toCoord); 但是,我填充适配器(AsyncTask)后,我需要在我的onPostExecute短距离,我不知道。 @Override protected void onPostExecute(Boolean result) { try { SQLiteHelper dbHelper = new SQLiteHelper(getActivity()); pds = new SomeDataSource(dbHelper.db); ArrayList<Raids> some = pds.getAllRaids(); SomeAdapter listViewAdapter = new SomeAdapter(getActivity(), some); getListView().setAdapter(listViewAdapter); SharedPreferences somename = context.getSharedPreferences("SomeName", Context.MODE_PRIVATE); Boolean UserOrder = somename.getBoolean("UserOrder", false); if (UserOrder){ } } catch (SQLiteException | NullPointerException […]

对包含string的文件名数组进行sorting

对于我的项目,我需要从FTP服务器下载一个zip文件,每年发布一个新的zip约13次。 我需要按照服务器的命名约定来下载最新的文件: Prefix + release number (one or two digits) + year (two digits) + suffix + ".zip" 例如: ALFP1016F.zip 前缀总是相同的(ALFP),后缀是F或P(代表“全部”或“部分”;我只需要以后缀F结尾的文件)。 最重要的是,在我需要忽略的目录中还有其他几个文件,因为它们有不同的前缀。 然后,我需要按照以下优先顺序获取数组中最近的文件: 最近一年。 当然99不应该被视为最近的一年。 最近的版本号 例如,如果我有这个文件名列表( 完整的服务器目录 ): 1stpage712.pdf 1stpage914.pdf ALFP1015F.zip ALFP1015P.zip ALFP716F.zip ALFP716P.zip FSFP816F.zip FSFP816P.zip 我的预期产出将是 ALFP716F.zip 是因为16是最近一年,而7是当年最新的发行版本号 。 以下是我迄今为止所做的: //necessary imports import org.apache.commons.net.ftp.FTP; import org.apache.commons.net.ftp.FTPClient; import org.apache.commons.net.ftp.FTPFile; //initialize FTP client ftpClient = […]

Androidsortingsqlite查询结果,忽略大小写

只是想知道如果sorting查询的结果忽略大小写的方式。 原因在于,以大写字母开始的字段被sorting并置于列表的顶部,并且以小写字母开始的字段也被sorting,但是被置于大写字段之后。 谢谢 – 迈克

对Map <String,String>列表进行sorting

我有一个像这样创build的列表variables: List<Map<String, String>> list = new ArrayList<Map<String, String>>(); 在我的Android应用程序中,这个列表被填充。 只是一个例子: Map<String, String> map1 = new HashMap<String, String>(); map.put("name", "Josh"); … Map<String, String> map2 = new HashMap<String, String>(); map.put("name", "Anna"); … Map<String, String> map3 = new HashMap<String, String>(); map.put("name", "Bernie"); … list.add(map1); list.add(map2); list.add(map3); 我正在使用list通过扩展BaseAdapter和实现各种方法在ListView显示结果。 我的问题:我需要根据地图的键名按字母顺序对list进行sorting 问题:根据地图的键名按字母顺序排列list的简单方法是什么? 我似乎无法把这个包裹起来。 我已经从每个Map提取每个名称到一个String数组,并对其sorting( Arrays.sort(strArray); )。 但是,这并不保留每个Map的其他数据,所以我不太确定如何保留其他映射的值