黑马程序员技术交流社区

标题: 昏了,这个错误在哪了啊? [打印本页]

作者: 赵方明    时间: 2012-7-2 14:17
标题: 昏了,这个错误在哪了啊?
class SwapDemo
{
         public static void  swap(int a,int b)
{

        int temp=a;
                a=b;
                b=temp;
                System.out.println(a,b);
               
        }

        public static void main(String[] args)
        {
                int a=6;
                int b=456;
                swap(a,b);
               
        }
}
提示说方法PrintStrem.println(object)不适用
作者: 赵方明    时间: 2012-7-2 14:22
有没人啊 我看着没错误啊
作者: 于星星    时间: 2012-7-2 14:36
你的println方法写错了 ,把那个逗号用双引号括起来,因为在java中不加双引号的“,”他不知道是什么类型的,所以会报错,一般都是拼字符串的方法,比如你这里可以这样:
System.out.println("a="+a+","+"b="+b);
作者: 封明川    时间: 2012-7-2 14:45
class SwapDemo
{
         public static void  swap(int a,int b)
{

        int temp=a;
                a=b;
                b=temp;
                System.out.println(a,b); //打印的都是字符串,你这个不是字符串
               
        }

        public static void main(String[] args)
        {
                int a=6;
                int b=456;
                swap(a,b);
               
        }
}
作者: 杨锦    时间: 2012-7-2 15:17
"a="+a+","+"b="+b
作者: 黑马-王言龙    时间: 2012-7-2 15:25
package cn.itcast.melon;

class Demo
{
         public static void  swap(int a,int b)
         {
                        int temp=a;
                        a=b;
                        b=temp;
                        System.out.println(a,b);        //println()方法没有接收两个int类型参数的,它只能打印了一个值println(int x)
                                
                }

        public static void main(String[] args)
        {
                int a=6;
                int b=456;
                swap(a,b);
               
        }
}

作者: 冯大卫    时间: 2012-7-2 15:55
视频正好看到字符串.打印语句是 System.out.println(a+","+b);
作者: 黄丽慧    时间: 2012-7-2 15:55
本帖最后由 黄丽慧 于 2012-7-2 15:57 编辑

class SwapDemo
{
         public static void  swap(int a,int b)
{

        int temp=a;
                a=b;
                b=temp;
                System.out.println(a,b);//println方法格式错误了,该方法默认调用toString方法,输出的是字符串格式的,一般是用+来连接需要输出的字符串;应该改成System.out.println(a+b);
               
        }

        public static void main(String[] args)
        {
                int a=6;
                int b=456;
                swap(a,b);//这里其实可以直接往swap方法里面传参数,即swap(5,456);楼主这种写法把问题复杂化了,根本不需要定义变量a,b的
如果a和b是从键盘上接收的话,可以这样写
Scanner s=new Scanner(System.in);
System.out.println("请输入第一个要转换的数");
int a=s.nextInt();
System.out.println("请输入第一二个要转换的数");   
int b=s.nextInt();
swap(a,b);      注意创建Scanner实例时要把 import java.io.*;    放在类前面  

        }
}
提示说方法PrintStrem.println(object)不适用
作者: 黄丽慧    时间: 2012-7-2 17:05
呵呵,确实是不能直接System.out.println(a+b);,要不就变成是计算a+b的值后输出了,应该写成
System.out.println("交换后的数是:"+a+“  ”+b);




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