为什么Java Pair显示android.util.Pair而不是值
我正试图将为什么Java Pair显示android.util.Pair而不是值,java,android,Java,Android,我正试图将对列表添加到我的android项目中,但当我调用它时,它会给我这个值,而不是对android.util.Pair 以下是我如何创建和命名它: List<Pair<String, String>> StationList = new ArrayList<>(); .................. double Lat = "Some latitude" double lon = "Some logitude" Pair StationLatLon
对列表添加到我的android项目中,但当我调用它时,它会给我这个值,而不是对android.util.Pair
以下是我如何创建和命名它:
List<Pair<String, String>> StationList = new ArrayList<>();
..................
double Lat = "Some latitude"
double lon = "Some logitude"
Pair StationLatLong = new Pair(lat, lon);
StationList.add(StationLatLong);Log.d("Station List", String.valueOf(StationList));
List StationList=new ArrayList();
..................
双纬度=“某些纬度”
double lon=“一些逻辑”
对StationLatLong=新对(横向、纵向);
StationList.add(StationLatLong);Log.d(“站点列表”,String.valueOf(StationList));
下面是输出的样子:
String::valueOf
对传递给它的对象调用Object::toString
StationList
是android.util.Pair
的列表,它在Netath下使用的android.util.Pair::toString
未在中覆盖和记录
您可以尝试创建自己的类,该类扩展了android.util.pair
并覆盖toString
:
class MyPair<T, W> extends Pair<T, W> {
public MyPair(T first, W second) {
super(first, second);
}
@Override
public String toString() {
return "MyPair{" +
"first=" + this.first +
", second=" + this.second +
'}';
}
}
类MyPair扩展了Pair{
公共MyPair(T第一,W第二){
超级(第一,第二);
}
@凌驾
公共字符串toString(){
返回“MyPair{”+
“first=“+this.first+
“,second=“+这一秒+
'}';
}
}
扩展Pair类并重写其toString()
方法,以便打印所需内容。然后使用您自己的类,而不是android.util.Pair
获取该对中的每个值
stationList.first;
stationList.second;
所有这些答案都帮助我找到了正确的方法:
for (Pair<String, String> SingleItem : StationList) {
Log.d("Latitude", String.valueOf(SingleItem.first));
Log.d("Longitude", String.valueOf(SingleItem.second));
}
for(配对单项目:StationList){
Log.d(“纬度”,String.valueOf(SingleItem.first));
Log.d(“经度”,String.valueOf(SingleItem.second));
}
通过循环浏览列表,并使用
.first
和.second
显示该对的每个部分,如果这是正确答案,则首先将其标记为正确答案。干杯