| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 542 人关注过本帖
标题:帮看看。。这个怎么改、、
只看楼主 加入收藏
SUXU19881102
Rank: 1
等 级:新手上路
帖 子:10
专家分:4
注 册:2013-2-27
结帖率:100%
收藏
 问题点数:0 回复次数:9 
帮看看。。这个怎么改、、
void addStu(String name,int age,String arr[]){
        Student stu1=new Student();
        stu1.setName(name);
        stu1.setAge(age);
        int i=(arr.length);
        stu1.setNum(i);
        if(i==99999){
            System.out.println("学生人数以到最大,不能再添加了");
        }else{
            arr[i]=stu1;//这个stu1报错
        }

      想半天不明白哦、、、为啥那里报错、、
搜索更多相关主题的帖子: arr void 
2013-02-28 10:52
SUXU19881102
Rank: 1
等 级:新手上路
帖 子:10
专家分:4
注 册:2013-2-27
收藏
得分:0 
void addStu(String name,int age,Student[] arr){
        Student stu1=new Student();
        stu1.setName(name);
        stu1.setAge(age);
        int a;
for(int i ;i<arr.length;i++){
    if(arr[i]==null){
    a=i;
    retunrn a;
    }
}
        stu1.setNum(i);
        if(i==99999){
            System.out.println("学生人数以到最大,不能再添加了");
        }else{
            arr[a]=stu1;
        }
好吧。。总算发现了。。这样子就好了、、、

      


[ 本帖最后由 SUXU19881102 于 2013-2-28 11:20 编辑 ]
2013-02-28 10:56
hhwz
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:87
帖 子:687
专家分:4502
注 册:2011-5-22
收藏
得分:0 
虽然说错是不会错了 但是不合理的地方太多
2013-02-28 11:57
Susake
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:女儿国的隔壁
等 级:贵宾
威 望:23
帖 子:2288
专家分:6481
注 册:2012-12-14
收藏
得分:0 
????排版不优美

仰望星空...........不忘初心!
2013-02-28 12:10
ren829
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:15
帖 子:255
专家分:1174
注 册:2006-3-11
收藏
得分:0 
以下是引用SUXU19881102在2013-2-28 10:56:38的发言:

void addStu(String name,int age,Student[] arr){
        Student stu1=new Student();
        stu1.setName(name);
        stu1.setAge(age);
        int a;
for(int i ;i
你这样能实现你要的功能吗?我有些看不懂,我的想法是写一个Student的工厂方法。别把什么东西都放到addStu()里。因为你这样搞来搞去其实就一个 stu1 没有其它的 对象了。

[ 本帖最后由 ren829 于 2013-2-28 12:29 编辑 ]
2013-02-28 12:28
hhwz
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:87
帖 子:687
专家分:4502
注 册:2011-5-22
收藏
得分:0 
回复 3楼 hhwz
public class test {
    public static Student[] arr = new Student[99999];

    public static void addStu(String name, int age) {
        for (int i = 0; i < arr.length; i++) {
            if(arr[arr.length-1]!=null&&i==arr.length-1){
                System.out.println("超过最大添加人数");
                break;
            }
            if (arr[i] == null) {
                Student stu1 = new Student();
                stu1.setName(name);
                stu1.setAge(age);
                stu1.setNum(i);
                arr[i]=stu1;
                break;
            }
        }
      

    }

    public static void main(String[] args) {
        addStu("123",123);
        for(Student stu1 : arr){
            if(stu1!=null){
                System.out.println(stu1.getNum()+"\t"+stu1.getName()+"/t"+stu1.getAge());
            }
        }
        System.out.println("------------------------------");
        addStu("321",321);
        for(Student stu1 : arr){
            if(stu1!=null){
                System.out.println(stu1.getNum()+"\t"+stu1.getName()+"/t"+stu1.getAge());
            }
        }
        addStu("456",456);
      

    }
//你看看这个和楼主的有什么区别
2013-02-28 12:41
芥末小弟
Rank: 2
来 自:北京
等 级:论坛游民
帖 子:58
专家分:92
注 册:2013-1-19
收藏
得分:0 
看的太累。。。

开发者。。
QQ:690591637
2013-02-28 12:49
ren829
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:15
帖 子:255
专家分:1174
注 册:2006-3-11
收藏
得分:0 
版主的程序也没怎么看懂,不知道这个程序要实现什么目的?望解释。
2013-02-28 20:46
hhwz
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:87
帖 子:687
专家分:4502
注 册:2011-5-22
收藏
得分:0 
它的想法只是用一个数组来保存 Student
如果保存的数量超过了数组的最大长度就 输入超过长度,仅此而已
2013-03-01 09:54
ren829
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:15
帖 子:255
专家分:1174
注 册:2006-3-11
收藏
得分:0 
擦,搂住在方法里搞一个new Student()把我搞蒙了。
我一直以为 这个东西要这么写
Test{
Student stu1;
 Test(Student stu1()){
 this.stu1=stu1;
  }
}
构造函数引入一个 Student 引用;Student 类做一个 getStudent(){return new Student();}

      
2013-03-01 10:28
快速回复:帮看看。。这个怎么改、、
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019145 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved