A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 探花 中级黑马   /  2014-4-6 21:18  /  953 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 探花 于 2014-4-7 16:55 编辑

在学习函数的时候,对于函数的返回值类型有明确的定义

可是总是搞不清楚怎么去确认 返回值类型
//计算一个整数乘3+10的结果
        public static int add(int x)
        {               
                int y = x*3+10;               
                return y;               
        }
        //打印九九乘法表
        public static void print99()
        {
                for (int i=1;i<=9 ;i++ )
                {
                        for(int j=1;j<=i;j++){
                                System.out.print(j+"*"+i+"="+j*i+"\t");
                        }
                        System.out.println();
                }        
        }



为什么,上面的是int ,下面的也有 乘法表的返回啊,怎么用 void ,请高手给介绍一下。
有时候知道 分开String ..和 int 的返回值,可是搞不清楚什么时候使用 void . 一直到现在学习对象的时候都很难分开、



6 个回复

正序浏览
Peach2014 发表于 2014-4-6 22:36
所谓的返回值,只有函数才具备。
它的意义就是通过的函数处理后是否需要函数返还结果给调用者。
void 表示 ...

嗯,说的很好,好像明白了
回复 使用道具 举报
本帖最后由 Peach2014 于 2014-4-6 22:45 编辑

所谓的返回值,只有函数才具备。
它的意义就是通过的函数处理后是否需要函数返还结果给调用者。
void 表示不需要返回结果;
当需要返回结果时,就需要定义相应的数据类型;
就你的代码而言:
public static int add(int x) //这里你传入的值是x,需要计算后返回x*3+10以后的结果,
                                            //而且类型为int型,所以需要写返回值类型“int”
                                            //如果有了返回值类型,就必须有return语句
        {               
                int y = x*3+10;               
                return y;      //你需要什么值就要返回什么值。。你需要int类型。。y是int类型那就返回y是正确的。         
        }
        //打印九九乘法表
        public static void print99() //这里是不需要返回任何东西,因为结果已经通过
                                                     //“System.out.println(j+"*"+i+"="+j*i+"\t");“语句打印了,            
                                                    //所以不需返回值,但是函数格式要求要写返回值类型,这个位置就由“void”来填充了
        {
                for (int i=1;i<=9 ;i++ )
                {
                        for(int j=1;j<=i;j++){
                                System.out.print(j+"*"+i+"="+j*i+"\t");
                        }
                        System.out.println();
                }        
        }




评分

参与人数 1技术分 +1 收起 理由
枫儿 + 1 赞一个!

查看全部评分

回复 使用道具 举报 1 0
楼主是没弄明白什么叫做返回值 简单点说程序执行完后会将一个数(或是其他类型的值)返回给这个函数  例如 int  function();这个函数的返回值是int型的  如果你想使用这个函数的返回值 你可以定义一个int a;a=function();这样这个函数的返回值就赋给a啦  而你说的打印乘法表是指的你用了system.out,print();方法把你要输出的打印在控制台啦  希望对你有帮助
回复 使用道具 举报
public static int add(int x)
        {               
                int y = x*3+10;               
                return y;      //你需要什么值就要返回什么值。。你需要int类型。。y是int类型那就返回y是正确的。         
        }
        //打印九九乘法表
        public static void print99()
        {
                for (int i=1;i<=9 ;i++ )
                {
                        for(int j=1;j<=i;j++){
                                System.out.print(j+"*"+i+"="+j*i+"\t");
                        }
                        System.out.println();
                }        
        }
你的方法需要什么就返回什么。。
你需要String返回的就是String类型就行
什么不需要就不返回。。。void不用返回。。但是可以return;这样表示方法结束。。下面的不会执行了。

评分

参与人数 1技术分 +1 收起 理由
枫儿 + 1 赞一个!

查看全部评分

回复 使用道具 举报
山治0712 发表于 2014-4-6 21:31
下面的没有啊,直接打印在控制台

嗯,其实我是想问问 怎么区分的 返回值类型, 比如,int  , double ,string ,void 等、
回复 使用道具 举报
下面的没有啊,直接打印在控制台
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马