大家好,怎样根据条件,返回不同的类型呢?比如,有一个方法伪代码如下:public StringOrDate formatSome(isReturnDate)
{
Date d = new Date();
if(isReturnDate == true)
{
return d;
}
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy hh:mm");
String str = sdf.format(d);
return str;
}
我的需求是这样,如果传入的参数为true,则返回Date对象d;如果为false,则返回String对象。可能用泛型可以解决,怎么解决呢?
{
Date d = new Date();
if(isReturnDate == true)
{
return d;
}
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy hh:mm");
String str = sdf.format(d);
return str;
}
我的需求是这样,如果传入的参数为true,则返回Date对象d;如果为false,则返回String对象。可能用泛型可以解决,怎么解决呢?
public <T> T dos(T a)
{
System.out.println(a);
return a;
}
public static void main(String argv[])
{
Test t = new Test();
t.dos("s");
}
if (a instanceof Date) {
System.out.println("--This is Date object---");
System.out.println(a); }
if (a instanceof String) {
System.out.println("--This is String object---");
System.out.println(a);
}
return a;
} public static void main(String argv[]) {
TestReturnType t = new TestReturnType();
Date date = t.dos(new Date()); //return Date object
String str = t.dos(t.formatMyDate()); //return String object } public String formatMyDate() {
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy hh:mm");
return sdf.format(date);
}
}