java中方法为什么需要返回值?
2016-08-13 11:56
309 查看
关于什么需要返回值?我的理解是“因需要而定”。
比如一个方法,计算两个整数相加后的结果,就应该返回一个整数型
public int add(int a,int b)//典型的需要返回值的
{
return a+b;
}
如果一个方法,只需要处理问题,而不需要返回处理结果,就不用返回,也就是void,比如下面这个方法,传一个名字做参数,这个方法是向这个人问好
的,就只需要问好,不需要返回值
public void sayHello(String name)
{
System.out.println("中午好"+name);
}
以下我举个例子(注:例子很简单,但当以后大的项目中,就能体现出来它的思路优势了。):现在给你个问题解决,要求计算1+1等于几,并把结果显示出来。那么作为一个程序员,将会把解决这个问题时,就要把步骤分开:1.计算1+1等于几;2.显示结果。
那么首先在你的Java程序中的主函数中就先这样写:
public Class Test{
public static void main(String []args){
count();
showresult();
}
/*********
在此时程序肯定会报错,因为程序无法找到count()和showresult()方法。
所以在此基础上,要补完这两个方法,但这个时候,你就要考虑,在count方法中计算的结果,如何传个showresult方法呢?
此时就需要让count方法,在计算完成后产生一个返回值,然后将返回传个showresult方法就可以了。
那么接下来就需要这么写:
*********/
public Class Test{
public static void main(String []args){
int y = count();
/*********
由于count有了返回值,所以还需要一个变量接收,所以改写成这样 showresult(y);
若想让showresult显示出count的结果,就要将结果传入
*********/
}
public static int count(){
int x;
x=1+1;
return x ;
}
public static void showresult(int y){
System.out.print(y);
}
}
如上,则解决完成问题了。
在以上的例子中,count中有返回值,是因为你需要将结果返回回来传给另一个方法才写的。
而showresult方法中,没有返回值,是因为它显示之后,问题就解决了,就不需要在进行返回什么的了。
所以,我认为是否需要有返回值,是要看你在解决问题中的实际需求,而定的。
比如一个方法,计算两个整数相加后的结果,就应该返回一个整数型
public int add(int a,int b)//典型的需要返回值的
{
return a+b;
}
如果一个方法,只需要处理问题,而不需要返回处理结果,就不用返回,也就是void,比如下面这个方法,传一个名字做参数,这个方法是向这个人问好
的,就只需要问好,不需要返回值
public void sayHello(String name)
{
System.out.println("中午好"+name);
}
以下我举个例子(注:例子很简单,但当以后大的项目中,就能体现出来它的思路优势了。):现在给你个问题解决,要求计算1+1等于几,并把结果显示出来。那么作为一个程序员,将会把解决这个问题时,就要把步骤分开:1.计算1+1等于几;2.显示结果。
那么首先在你的Java程序中的主函数中就先这样写:
public Class Test{
public static void main(String []args){
count();
showresult();
}
/*********
在此时程序肯定会报错,因为程序无法找到count()和showresult()方法。
所以在此基础上,要补完这两个方法,但这个时候,你就要考虑,在count方法中计算的结果,如何传个showresult方法呢?
此时就需要让count方法,在计算完成后产生一个返回值,然后将返回传个showresult方法就可以了。
那么接下来就需要这么写:
*********/
public Class Test{
public static void main(String []args){
int y = count();
/*********
由于count有了返回值,所以还需要一个变量接收,所以改写成这样 showresult(y);
若想让showresult显示出count的结果,就要将结果传入
*********/
}
public static int count(){
int x;
x=1+1;
return x ;
}
public static void showresult(int y){
System.out.print(y);
}
}
如上,则解决完成问题了。
在以上的例子中,count中有返回值,是因为你需要将结果返回回来传给另一个方法才写的。
而showresult方法中,没有返回值,是因为它显示之后,问题就解决了,就不需要在进行返回什么的了。
所以,我认为是否需要有返回值,是要看你在解决问题中的实际需求,而定的。
相关文章推荐
- java中方法为什么需要返回值?
- 【JAVA学习】java中==、equals()、hashCode()都和对象的比较有关,在java中这三者各有什么用处呢,即java中为什么需要设计这三种对象的比较方法呢?
- java中为什么需要public static void main(String[] args)这个方法
- StaticCodeDemo.java:29: 错误: 方法声明无效; 需要返回类型 person(){//给对应的对象进行针对性的初始化。
- 【Java基础之重写equals、hashCode和compareTo方法】什么时候需要重写重写equals方法?为什么重写equals方法,一定要重写HashCode方法?
- java中等待一些线程执行完之后,再去执行别的方法(后者需要使用前者返回的结果)
- Java中字节流和字符流的read()方法为什么返回的值是int类型
- (java面试)为什么需要重写equals方法
- java中等待一些线程执行完之后,再去执行别的方法(后者需要使用前者返回的结果)
- Java中字节流和字符流的read()方法为什么返回的值是int类型
- Java方法内部类为什么需要方法形参或变量是final的?
- Java中使用hql,sql查询返回的list<Object> 转成需要的实体对象--方法讲解!
- Java中字节流和字符流的read()方法为什么返回的值是int类型
- Java中静态方法返回类名
- 为什么Java的每个对象都有wait()/notify()方法?
- 为什么 SqlCommand.ExecuteNonQuery() 方法返回 -1?
- Java多线程初学者指南(8):从线程返回数据的两种方法
- 一些java类中为什么需要重载 serialVersionUID 属性
- dwr例子4调用返回JavaBean的java方法
- Java 5.0 泛型之 通过泛型方法返回泛型类型