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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© f78fk 中级黑马   /  2014-5-31 19:03  /  1829 人查看  /  12 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 f78fk 于 2014-6-4 21:16 编辑

import java.util.*;

class Perrson
{
        private String name;;
        private int age;
        Perrson(String name,int age)
        {
                this.name = name;
                this.age = age;
        }
        public String getName()
        {
                return name;
        }
        public int getAge()
        {
                return age;
        }
}

class ArrayListTest2
{
        public static void sop(Object obj)
        {
                System.out.println(obj);
        }
        public static void main(String[] args)
        {
                ArrayList al = new ArrayList();
               
                al.add(new Person("李四1",30));
                al.add(new Person("李四2",32));
                al.add(new Person("李四3",33));
                al.add(new Person("李四4",35));

                Iterator it = al.iterator();

                while(it.hasNext())
                {
                        Person p = (Person)it.next();
                        sop(p.getName()+"::"+p.getAge());
                }
        }
}


编译提示:
ArrayListTest2.java:41: 错误: 无法将类 Person中的构造器 Person应用到给定类型;
                al.add(new Person("李四1",30));
                       ^
  需要: 没有参数
  找到: String,int
  原因: 实际参数列表和形式参数列表长度不同

评分

参与人数 1技术分 +1 收起 理由
李小然 + 1

查看全部评分

12 个回复

倒序浏览
f78fk 来自手机 中级黑马 2014-5-31 19:12:15
沙发
希望各位高手能指点下 谢谢
回复 使用道具 举报 0 1
类名和构造方法名写错了,类名和构造方法名你写的都是Perrson,而下面传的却是new Person("李四1",30),肯定找不到构造器啦。。。

评分

参与人数 1技术分 +1 收起 理由
李小然 + 1

查看全部评分

回复 使用道具 举报 2 0

複制錯誤

本帖最后由 沐小北 于 2014-5-31 20:18 编辑

複制錯誤
回复 使用道具 举报
第一段:
package com.itheima少了“com”
回复 使用道具 举报 1 0
把类名写错了,如果你用eclipse的话,尽量自动生成构造方法,这样就不会写错,只要将 调用的类名改成你写的就好了,不报错了看
package com.itheima;
import java.util.*;

class Perrson
{
        private String name;;
        private int age;
        Perrson(String name,int age)
        {
                this.name = name;
                this.age = age;
        }
        public String getName()
        {
                return name;
        }
        public int getAge()
        {
                return age;
        }
}

class ArrayListTest2
{
        public static void sop(Object obj)
        {
                System.out.println(obj);
        }
        public static void main(String[] args)
        {
                ArrayList al = new ArrayList();
               
                al.add(new Perrson("李四1",30));
                al.add(new Perrson("李四2",32));
                al.add(new Perrson("李四3",33));
                al.add(new Perrson("李四4",35));

                Iterator it = al.iterator();

                while(it.hasNext())
                {
                        Perrson p = (Perrson)it.next();
                        sop(p.getName()+"::"+p.getAge());
                }
        }
}

评分

参与人数 1技术分 +1 收起 理由
李小然 + 1

查看全部评分

回复 使用道具 举报
大哥,你的person类定义成perrson了!
类名和构造函数名称改一下就OK了!
回复 使用道具 举报
茄子 高级黑马 2014-5-31 19:49:45
8#
顶楼上!!!
回复 使用道具 举报
f78fk 来自手机 中级黑马 2014-5-31 20:14:51
9#
☆枫の云 发表于 2014-5-31 19:26
类名和构造方法名写错了,类名和构造方法名你写的都是Perrson,而下面传的却是new Person("李四1",30),肯 ...

都怪我粗心,找了半天没找到,非常感谢!
回复 使用道具 举报
package com.itheima;

import java.util.*;

class Perrson
{
        private String name;;
        private int age;
        Perrson(String name,int age)
        {
                this.name = name;
                this.age = age;
        }
        public String getName()
        {
                return name;
        }
        public int getAge()
        {
                return age;
        }
}

class ArrayListTest2
{
        public static void sop(Object obj)
        {
                System.out.println(obj);
        }
        public static void main(String[] args)
        {
                ArrayList al = new ArrayList();
               
                al.add(new Perrson("李四1",30));
                al.add(new Perrson("李四2",32));
                al.add(new Perrson("李四3",33));
                al.add(new Perrson("李四4",35));

                Iterator it = al.iterator();

                while(it.hasNext())
                {
                        Perrson p = (Perrson)it.next();
                        sop(p.getName()+"::"+p.getAge());
                }
        }
}
回复 使用道具 举报
你可以使用  myeclipse進行編譯!
回复 使用道具 举报
f78fk 来自手机 中级黑马 2014-5-31 20:17:29
12#
yinxjfly 发表于 2014-5-31 19:33
大哥,你的person类定义成perrson了!
类名和构造函数名称改一下就OK了!

非常感谢,我一直找那个参数列表,明明长度一致为什么提示参数列表不一致,原来是类名写错了 。
回复 使用道具 举报
你的类名写错了,把Person写成Perrson
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马