场景:使用instanceof判断类型
1.例子
public class TestInstanceof {
public static Object getInfo(String type){
CityInfo cityInfo = new CityInfo();
cityInfo.setCityName("厦门");
cityInfo.setLandArea(1116.3);
ProvinceInfo province = new ProvinceInfo();
province.setProvinceName("福建");
province.setLandArea(120000);
if("福建".equals(type)){
return province;
}else{
return cityInfo;
}
}
private static final class CityInfo{
String cityName;
double landArea;
public String getCityName() {
return cityName;
}
public void setCityName(String cityName) {
this.cityName = cityName;
}
public double getLandArea() {
return landArea;
}
public void setLandArea(double landArea) {
this.landArea = landArea;
}
}
private static final class ProvinceInfo{
String provinceName;
double landArea;
public String getProvinceName() {
return provinceName;
}
public void setProvinceName(String provinceName) {
this.provinceName = provinceName;
}
public double getLandArea() {
return landArea;
}
public void setLandArea(double landArea) {
this.landArea = landArea;
}
}
public static void main(String []args){
Object obj = getInfo("福建");
if(obj instanceof CityInfo){
CityInfo info = (CityInfo)obj;
System.out.println("城市: " + info.getCityName() + " 面积:"+ info.getLandArea());
}else{
ProvinceInfo info = (ProvinceInfo)obj;
System.out.println("省: " + info.getProvinceName() + " 面积:"+ info.getLandArea());
}
}
}
以上,TKS.