Java定义方法的时候,是否可以把某个参数定义成可选的
比如
方法A中两个参数a和b,b就是可选的,可传可不传。
谢谢大家的热心,也许我没有说明白
在vb里,一个方法里的某个参数可传可不传可以这么写
Private Sub test(ByVal ob1 As String, Optional ByVal ob2 As String)
.....
End Sub
其中的参数ob2前几个一个Optional 属性,这样这个参数就可以可传可不传了
比如
test(ob1) 也可以调用这个方法
test(ob1,ob2)也可以调用这个方法
在Java里是否可以?不用把那个可选可不选的置为空,也不用重载。
谢谢
java 定义可选参数
答案:4 悬赏:40
解决时间 2021-02-01 21:22
- 提问者网友:恋你成殇
- 2021-02-01 12:09
最佳答案
- 二级知识专家网友:一起来看看吧
- 2021-02-01 13:19
两种解决方法
1、调用的时候把不需要的参数传为null 在方法里面判断。
2、以相同的方法名定义多个方法如
public int A(int a){}
public int A(int a,int b){}
public int A(int a,int b,int c){}
public int A(int a,int b,int c,int d){}
//根据你的需要调用对应的方法就可以了在同一个类里面可以有多个同名字不同参数(类型,个数)的方法
1、调用的时候把不需要的参数传为null 在方法里面判断。
2、以相同的方法名定义多个方法如
public int A(int a){}
public int A(int a,int b){}
public int A(int a,int b,int c){}
public int A(int a,int b,int c,int d){}
//根据你的需要调用对应的方法就可以了在同一个类里面可以有多个同名字不同参数(类型,个数)的方法
全部回答
- 1楼网友:一只傻青衣
- 2021-02-01 16:33
void test(string arg){
if(arg==null){
try {
throw new exception("参数不能为空");
} catch (exception e) {
e.printstacktrace();
}
}
}
- 2楼网友:转身→时光静好
- 2021-02-01 15:59
可以 ,
可是如果A方法中用到了参数b,则在方法A中必须对b做判断,或者是在把b传入A方法前作判断,否则报空指针异常的。
希望从下面的小例子会对你有帮助:
public class Checkbox {
public static void test(String a,String b){
if(a.equals("a")){
System.out.println("a test");
}
if(b==null){
System.out.println("b is null");
return;
}
if(b.equals("b")){
System.out.println("b test");
}
}
public static void main ( String[] args ){
String a="a";
String b=null;
test(a,b);
}
}
- 3楼网友:许你一世温柔
- 2021-02-01 14:42
当然可以,不过当你调用A方法的时候,传入的参数一定要和A方法中的参数个数以及类型相同即可……
在java中是不可以像你说的那样的……
不然会报找不到该方法的错误……
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯