带参数的函数(JAVA称方法)可以用参数将数值传递进函数,比如你的第一个函数,当调用addTwo函数的时候,就通过参数将数值,10,20传递进了函数当中进行计算,得出结果,然后返回结果。如果改成你第二种写法,其实这个函数是失效的,因为我们要通过这个函数计算不同的值的和,而没有参数,就不能在调用的时候将值传递进去,这个函数的返回值永远是30。你可以试一下将第一种写法里面的调用改成 int one = addTwo(100,200); 输出的结果将为300,。第二种写法显然做不到。
至于你说的不用返回值,还有一种叫做按引用调用可以作为函数值的出口,写法是函数类型 函数名(& 参数类型 参数名){}比如public void addone(int & a){a += 1;}这样当你调用这个函数的时候,a就会自增加1。如果要具体解释就涉及到形参和实参,你可以自己去百度一下,有什么不明白的再问吧
这两句没有什么本质的区别,都是调用方法。但是两个分配内存的方法不一样,前者是把参数的内存copy到方法里,而后者是直接调用方法里分配的内存,其实内存大小都是一样。如果参数多了,前者容易出错,而后者就不会,相对来说用后者比较理想些。
第一个和第二个是不一样的,因为既然用了method,那么就需要表达出这个method功能,第二个只能算10+20, 而不能表达出addTwo的功能。。。所以在某种程度上说第二种制式用了method的形式而已。
当然是带参数的更好了,更加灵活,代码的复用度更高。