黑马程序员技术交流社区

标题: 编译失败 [打印本页]

作者: Lam    时间: 2014-5-9 16:20
标题: 编译失败
本帖最后由 Lam 于 2014-5-10 10:58 编辑

为什么编译失败?
  1. class FunctionOverload
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 int a=add(4,5);
  6.                 int b=add(1,2,3);
  7.                 System.out.println(a,b);
  8.         }
  9.         public static int add(int x,int y)
  10.         {
  11.                 return x+y;
  12.         }
  13.         public static int add(int x,int y,int z)
  14.         {
  15.                 return x+y+z;
  16.         }

  17. }
复制代码

作者: 月光海    时间: 2014-5-9 16:28
输出语句没有两个参数的println方法,必然编译失败
作者: 彭飞    时间: 2014-5-9 16:37
System.out.println(a,b);错误在这里

输出语句怎么这样写了, 这样写代表的是传参,
这个小错误,改改吧。
作者: 彭飞    时间: 2014-5-9 16:38
彭飞 发表于 2014-5-9 16:37
System.out.println(a,b);错误在这里

输出语句怎么这样写了, 这样写代表的是传参,

不给技术分,也不给经验,也不给金币。这是什么节奏。
作者: Lam    时间: 2014-5-9 16:44
彭飞 发表于 2014-5-9 16:38
不给技术分,也不给经验,也不给金币。这是什么节奏。

什么是传参?如果想把结果以这种形式a=,b=同时输出该怎么写?
作者: lzhuas    时间: 2014-5-9 18:07
  1. class FunctionOverload
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 int a=add(4,5);
  6.                 int b=add(1,2,3);
  7.                 System.out.println(a,b);///哥们以前是学C的吧,Java里的输出时用“+”号连接输出的,例如:System.out.println("a:"+a+"b:"+b);
  8.         }
  9.         public static int add(int x,int y)
  10.         {
  11.                 return x+y;
  12.         }
  13.         public static int add(int x,int y,int z)
  14.         {
  15.                 return x+y+z;
  16.         }

  17. }
复制代码



作者: \(^o^)/    时间: 2014-5-9 18:47
  1. class demo
  2. {
  3. public static void main(String[] args)
  4. {
  5. int a=add(4,5);
  6. int b=add(1,2,3);
  7. System.out.println(a+","+b);
  8. }
  9. public static int add(int x,int y)
  10. {
  11. return x+y;
  12. }
  13. public static int add(int x,int y,int z)
  14. {
  15. return x+y+z;
  16. }

复制代码
打印的时候不能直接就一个a,b, 要不你想用一个打印语句的话必须要用连接符,就是+然后逗号要用“”给括起来,这样打印的结果就是9,6;如果你直接输入a+b的话结果就是两者的和也就是15。不知道楼主有没有听明白。

作者: jsjchenlong    时间: 2014-5-9 21:13
请看下面的代码,希望对你有帮助
public class Test4 {
    public static void main(String[] args)
    {
            int a=add(4,5);
            int b=add(1,2,3);
            //是这句代码的问题,这个问题其实很好容易看出来的。
            System.out.println(a,b);
            //下句这个代码可能是你想要的结果
            System.out.println("a="+a+",b="+b);

    }
    public static int add(int x,int y)
    {
            return x+y;
    }
    public static int add(int x,int y,int z)
    {
            return x+y+z;
    }
}
作者: 倪大大    时间: 2014-5-9 21:32
println()里面如果需要输入两个参量.你只能用"+"来连接,不能用","...
作者: 彭飞    时间: 2014-5-9 23:26
Lam 发表于 2014-5-9 16:44
什么是传参?如果想把结果以这种形式a=,b=同时输出该怎么写?

传参你慢慢看吧,

在输出语句你要分清楚,什么是运算的,什么是打印的,
你想要的结果应该这样来写:

System.out.println("a="+a+"---"+"b="+b);
引号内是打印内容,连接的是运算结果

兄弟,多看看视频吧
作者: 周大侠    时间: 2014-5-9 23:51
Java种没有这种输出,报错如图,你的输出语句有错,你可以写成
System.out.printn(a);
System.out.printn(b);或
System.out.printn("a="+a+",b="+b);

I6`1IYH}7KR{`{O]T9(Y%ZV.jpg (37 KB, 下载次数: 178)

I6`1IYH}7KR{`{O]T9(Y%ZV.jpg

作者: Lam    时间: 2014-5-10 10:58
俺算明白了,俺犯了一个很低级的错误:#谢谢各位大哥了:lol
作者: Kael    时间: 2014-5-10 12:22
输出连接符是  +  号啊




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2