我能够显示same解析和结果是存储在一个数组列表中,但数组包含不止一次相同的值作为我的xml文件现在我想输入一个值只有一次my没有重复的值在相同的kind...as你在xml文件中查找url http://site4demo.com/artealdiaonline/output.php?lat=-34.6394879&lng=-58.3617837kkj在这个url“类型”标签包含多个相同类型的值超过一个..I想要在数组中输入它只有一次...I认为我的qus将是清楚的..so亲爱的,该怎么办?
这段代码抛出了java.lang.NullPointerException
,为什么?
Spinner s = (Spinner) findViewById(R.id.Spinner01);
**ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, ciudad);**
s.setAdapter(adapter);
发布于 2011-05-23 13:03:55
您可以使用ArrayList的contains
方法来检查值是否已经存在。如果唯一值的列表很长,这将是非常低效的。更好的方法是维护已经添加到ArrayList中的值的HashSet,并对其进行检查,而不是对ArrayList本身进行检查。如果不需要保持值在XML中的顺序,那么只需使用HashSet,并在解析完成后(如果需要)转换为ArrayList即可。
发布于 2011-05-23 12:58:02
也许可以把一个集合看作你的数据结构,比如HashSet。或者添加一些逻辑以不向数组中添加重复项。
发布于 2011-05-24 06:27:51
ArrayList ciudad =新的ArrayList();for (int i= 0;i< sitesList.getCiudad().size();i++) {
if (!ciudad.contains(sitesList.getCiudad().get(i)))
{
ciudad.add(sitesList.getCiudad().get(i));
}
}
Spinner s = (Spinner) findViewById(R.id.Spinner01);
**ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_spinner_item, ciudad);**
s.setAdapter(adapter);
https://stackoverflow.com/questions/6097484
复制