黑马程序员技术交流社区

标题: 刚接触面向对象有一问题需要解答,求帮助! [打印本页]

作者: 黎夕旧梦    时间: 2015-4-28 21:26
标题: 刚接触面向对象有一问题需要解答,求帮助!
需求:定义一个数组类,实现数组的遍历,求最大值,反转等功能,供用户使用!求怎么定义这个数组?
作者: 海带    时间: 2015-4-28 22:54
  1. class MyArray {
  2.         private int[] intList;

  3.         public MyArray() {

  4.         }

  5.         public MyArray(int[] intList) {
  6.                 super();
  7.                 this.intList = intList;
  8.         }

  9.         public int[] getIntList() {
  10.                 return intList;
  11.         }

  12.         public void setIntList(int[] intList) {
  13.                 this.intList = intList;
  14.         }

  15.         public int getMax() {// 获取最大值
  16.                 int max = 0;
  17.                 int temp;
  18.                 for (int i = 0; i < intList.length; i++) {
  19.                         if (intList[i] > max) {
  20.                                 temp = max;
  21.                                 max = intList[i];
  22.                                 intList[i] = temp;
  23.                         }
  24.                 }
  25.                 return max;
  26.         }

  27.         public int[] reverseArray() {// 反转数组的方法
  28.                 int temp;
  29.                 for (int i = 0; i < intList.length / 2; i++) {

  30.                         temp = intList[i];
  31.                         intList[i] = intList[intList.length - 1 - i];
  32.                         intList[intList.length - 1 - i] = temp;

  33.                 }
  34.                 return intList;
  35.         }
  36. }

  37. class MyArrayTest {
  38.         public static void main(String[] args) {
  39.                 MyArray my = new MyArray(new int[] { 1, 5, 8, 9, 4, 2, 6, 7, });
  40.                 for (int i = 0; i < my.getIntList().length; i++) {
  41.                         System.out.print(my.getIntList()[i]);
  42.                         }
  43.                 System.out.println();
  44.                 int[] newArray = my.reverseArray();
  45.                 for (int i = 0; i < my.getIntList().length; i++) {
  46.                         System.out.print(newArray[i]);
  47.                         }
  48.                 System.out.println();
  49.                 System.out.println(" max is" + my.getMax());

  50.         }

  51. }
复制代码

运行结果
  1. 15894267
  2. 76249851
  3. max is9
  4. 06247851
复制代码

写的匆忙可能有没考虑全的
作者: 黎夕旧梦    时间: 2015-4-30 16:09
海带 发表于 2015-4-28 22:54
运行结果

写的匆忙可能有没考虑全的

非常感谢!




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