怎么限制一个方法中传入的某个参数只能是int或者是String类型,我考虑的是枚举但是不知道这个枚举怎么写

我有一个方法如下:
[code="java"]public List findBySth(String model,String sth, IntOrStr parameter){
//do something;
}[/code]
这个方法里我要限制parameter参数要么是int要么是String,所以我声明了一个枚举IntOrStr,
[code="java"]public enum IntOrStr {
}[/code]
当这个parameter参数被声明为IntOrStr是,IntOrStr返回int或者String Type,
但是这个枚举IntOrStr应该怎么写,希望有人能帮我下,先感谢大家了

这个想法很有意思..但我想还有另一种简单的方式可以实现它..
[code="java"]
public List findBySth(String model, String sth, int parameter) {
return findBySth(model, sth, parameter, null);
}

public List findBySth(String model, String sth, String parameter) {
return findBySth(model, sth, null, parameter);
}

private List findBySth(String model, String sth, Integer intParam, String strParam) {
// do something;
}
[/code]

[code="java"]
public enum TetEnum {
STRING {
@Override
public Object getValue() {
return "String";
}
}, INTEGER {
@Override
public Object getValue() {
return Integer.MAX_VALUE;
}
};

public abstract Object getValue();

}

[/code]

难道,不可以用重载吗。