Java 从列表中删除重复值<;字符串>;在Android中
我有一个列表,它有重复的值,我想从中去掉重复的值,只过滤单个值 当前输出是Java 从列表中删除重复值<;字符串>;在Android中,java,android,json,Java,Android,Json,我有一个列表,它有重复的值,我想从中去掉重复的值,只过滤单个值 当前输出是{a,a,a,b,b,c,c,d,d},我想更改它,并将输出作为{a,b,c,d} 这是我现在用来获取当前输出的代码 List<String> pickupOutlet = new ArrayList<String>(); @Override public void onTaskCompleted(JSONArray responseJson) {
{a,a,a,b,b,c,c,d,d}
,我想更改它,并将输出作为{a,b,c,d}
这是我现在用来获取当前输出的代码
List<String> pickupOutlet = new ArrayList<String>();
@Override
public void onTaskCompleted(JSONArray responseJson) {
// TODO Auto-generated method stub
try {
for (int i = 0; i < responseJson.length(); ++i) {
JSONObject object = responseJson.getJSONObject(i);
Log.i("OutletName", object.getString("OutletName"));
pickupOutlet.add(object.getString("OutletName"));
}
} catch (JSONException e) {
e.printStackTrace();
}
}
List pickupOutlet=new ArrayList();
@凌驾
已完成TASKC上的公共作废(JSONArray responseJson){
//TODO自动生成的方法存根
试一试{
对于(int i=0;i
有谁能帮我实现它吗
已更新
当前代码
这对我有用
for (int i = 0; i < responseJson.length(); ++i) {
JSONObject object = responseJson.getJSONObject(i);
if (!pickupOutletDuplicates.contains(object.getString("OutletName"))){
Log.i("OutletName", object.getString("OutletName"));
pickupOutletDuplicates.add(object
.getString("OutletName"));
}
}
for(int i=0;i
您可以使用,例如HashSet。检查您的列表是否已经包含以下值:
JSONObject object = responseJson.getJSONObject(i);
Log.i("OutletName", object.getString("OutletName"));
if (!pickupOutlet.contains(object.getString("OutletName"))
pickupOutlet.add(object.getString("OutletName"));
检查pickupOutlet是否包含如下所示的dulicate值
if(!pickupOutlet.contains(object.getString("OutletName"))){
pickupOutlet.add(object.getString("OutletName"));
}
只需使用Set而不是List。因为集合只包含唯一的值。而列表包含重复的值
Set<String> pickupOutlet = new HashSet<String>();
@Override
public void onTaskCompleted(JSONArray responseJson) {
// TODO Auto-generated method stub
try {
for (int i = 0; i < responseJson.length(); ++i) {
JSONObject object = responseJson.getJSONObject(i);
Log.i("OutletName", object.getString("OutletName"));
pickupOutlet.add(object.getString("OutletName"));
}
} catch (JSONException e) {
e.printStackTrace();
}
}
Set pickupOutlet=new HashSet();
@凌驾
已完成TASKC上的公共作废(JSONArray responseJson){
//TODO自动生成的方法存根
试一试{
对于(int i=0;i
List duplicateList=(List)数组;
duplicateList.size());
系统输出打印项次(重复列表);
//将ArrayList转换为HashSet以删除重复项
HashSet<String> listToSet = new HashSet<String>(duplicateList);
HashSet-listToSet=新的HashSet(duplicateList);
//创建没有重复值的Arraylist
List<String> listWithoutDuplicates = new ArrayList<String>(listToSet);
System.out.println("size of ArrayList without duplicates: " + listToSet.size());
System.out.println(listWithoutDuplicates);
List List without duplicates=new ArrayList(listToSet);
System.out.println(“没有重复项的ArrayList的大小:+listToSet.size());
System.out.println(列表无重复项);
您可以使用谷歌搜索此问题,或者尝试使用HashSetU检查更新的question@modabeckham什么意思是它不起作用。oyu能否提供一个可运行的示例,以便我可以自己尝试?我能够获得输出
List<String> listWithoutDuplicates = new ArrayList<String>(listToSet);
System.out.println("size of ArrayList without duplicates: " + listToSet.size());
System.out.println(listWithoutDuplicates);