private List<ContactSortModel> queryData(String groupname) { // mSortList = new ArrayList<SortModel>(); if (mContactList == null) { mContactList = new ArrayList<ContactSortModel>(); } else { mContactList.clear(); } List<Roster> rosters = getRosters(groupname); if (mIsContact) { ContactSortModel sm1 = new ContactSortModel(); Roster roster = new Roster(); roster.setAlias("添加好友"); sm1.setRoster(roster); sm1.setSortLetters("@"); mContactList.add(sm1); ContactSortModel sm2 = new ContactSortModel(); Roster roster2 = new Roster(); roster2.setAlias("新朋友"); sm2.setRoster(roster2); sm2.setSortLetters("@"); mContactList.add(sm2); } for (int i = 0; i < rosters.size(); i++) { ContactSortModel sortModel = new ContactSortModel(); sortModel.setRoster(rosters.get(i)); // 取roster的alias昵称,并将汉字转换成拼音 String pinyin = mCharacterParser.getSelling(rosters.get(i).getAlias()); String sortString = pinyin.substring(0, 1).toUpperCase(); // 正则表达式,判断首字母是否是英文字母 if (sortString.matches("[A-Z]")) { sortModel.setSortLetters(sortString.toUpperCase()); } else { sortModel.setSortLetters("#"); } mContactList.add(sortModel); } return filterData(mFilterString, mContactList); }