黑马程序员技术交流社区

标题: JAVA问题 [打印本页]

作者: 杨武林    时间: 2013-4-2 23:27
标题: JAVA问题
想问下,比如一组信息学生信息:姓名、年龄、科目、分数,这样的信息可以用一张二维表的数组储存吗?如果可以怎样来定义这个数组?
作者: lucy198921    时间: 2013-4-3 00:18
  1. public class Student implements java.io.Serializable{

  2.   private static final long serialVersionUID = 1L;

  3.   private String name;

  4.   private int age;

  5.   private int grade;

  6.   public Student(String name,int age,int grade){

  7.    this.name = name;

  8.    this.age = age;

  9.    this.grade = grade;

  10.   }

  11.   public String getName() {

  12.    return name;

  13.   }

  14.   public void setName(String name) {

  15.    this.name = name;

  16.   }

  17.   public int getAge() {

  18.    return age;

  19.   }

  20.   public void setAge(int age) {

  21.    this.age = age;

  22.   }

  23.   public int getGrade() {

  24.   return grade;

  25.   }

  26. public void setGrade(int grade) {

  27.    this.grade = grade;

  28. }

  29. }
复制代码

作者: HM何伟    时间: 2013-4-3 00:25
不可以,数组只存放同一类型的基本数据类型,等你学到集合就知道了,集合可以储存不同类型的对象.
作者: 赵家阳    时间: 2013-4-3 00:45
  1. public class Demo {
  2.         public static void main(String[] args) {
  3.                 String[][] arr = new String[4][];
  4.                 arr[0] = new String[]{"name","age","subject","grade"};
  5.                 arr[1] = new String[]{"张三","18","数学","89"};
  6.                 arr[2] = new String[]{"李四","20","英语","60",""};
  7.                 arr[3] = new String[]{"张小三","18","数学","89"};
  8.                
  9.                 printArray(arr);
  10.         }
  11.         public static void printArray(String[][] arr){
  12.                 for(int i=0;i<arr[0].length;i++){
  13.                         System.out.print(arr[0][i]+" ");
  14.                 }
  15.                 System.out.println();
  16.                 for(int i=1;i<arr.length;i++)
  17.                 {
  18.                         for(int j=0;j<4;j++)
  19.                         {
  20.                                 System.out.print(arr[i][j]+"    ");
  21.                         }
  22.                         System.out.println();
  23.                 }
  24.         }
  25. }
复制代码
用二维数组也可以,但是不能动态操作,有些麻烦,可以考虑用集合解决。{:soso_e113:}
作者: 王川    时间: 2013-4-3 10:13
楼上还帮忙整出来了。想问问lz是突发奇想还是遇到这个需求了,要这样来存储,多不方便啊

作者: 随便    时间: 2013-4-3 10:24
这是java又不是c语言,果断封装javabean啊
作者: 杨武林    时间: 2013-4-3 10:58
wongtry 发表于 2013-4-3 10:13
楼上还帮忙整出来了。想问问lz是突发奇想还是遇到这个需求了,要这样来存储,多不方便啊
...

我是看到数组的时候..突发奇想的...
作者: HM刘俊    时间: 2013-4-3 11:33
必须可以。。。
String[][] r=new String[x][y];
以下省略n行代码。
作者: 杨武林    时间: 2013-4-3 12:51
HM何伟 发表于 2013-4-3 00:25
不可以,数组只存放同一类型的基本数据类型,等你学到集合就知道了,集合可以储存不同类型的对象. ...

嗯..明白了..谢谢...:)




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