java 程序 貌似思想和语法有问题 请高手帮忙解决

来源:百度知道 编辑:UC知道 时间:2024/06/03 03:37:37
题目:用ArrayList定义2个类,有个学生类里面包括姓名和年龄 用便利 做出最后输出

import java.util.*;
public class H1_10
{
public static void main(String[] args)
{
Scanner scan=new Scanner(System.in);
Random ran=new Random();
Student s1=new Student();

System.out.println("请输入学生姓名:");
System.out.println("输入#号键结束");
do
{
s1.setArr(scan.next());
s1.setArr((String)ran.nextInt());//随即给前面跟着的学生姓名生成一个 成绩
}
while(scan.next()!="#");
s1.show();

}
}
class Student
{
ArrayList<String> arr=new ArrayList<String>();
public void setArr(String arr)
{
this.arr=arr;
}

public void show()
{
for(String s:arr)
{ System.out.printlin(s); }

}
}

//思路和语法哪块有问题..标上注释吧...谢谢啦...

帮你改了下,你对着看看吧,问题大概有:
1、把String赋给ArrayList,用ArrayList的add()方法。
2、ArrayList的输出,不知道你是从什么教材上学的。
3、随机输出一个成绩,会有很恐怖的数字啊!!(这个你自己改吧)
import java.util.*;
public class H1_10
{
public static void main(String[] args)
{
Scanner scan=new Scanner(System.in);
Random ran=new Random();
Student s1=new Student();

System.out.println("请输入学生姓名:");
System.out.println("输入#号键结束");
do{
String nn=scan.next();
if(nn.equals("#"))break;
s1.setArr(nn);
s1.setArr(String.valueOf(ran.nextInt()));//随即给前面跟着的学生姓名生成一个 成绩
}while(true);
s1.show();

}
}
class Student
{
ArrayList<String> arr=new ArrayList<String>();
public void setArr(String ar)
{
arr.add(ar);
}

public void show()
{
Iterator<String> itr = arr.iterator();
while (itr.hasNext()) {
String elemen