java吧 关注:1,237,702贴子:12,707,499

回复:【入驻JAVA吧 记录学习点滴】

取消只看楼主收藏回复

主要我自己也学到两个新方法,split(); 和 将String型字符串转换成int的方法Integer.parseInt(); 而且给了我对24题一点想法```


133楼2011-12-15 22:58
回复
    现在很是不了解final修饰方法中有一句,一个final方法只能被实现一次 这句话是什么意思


    134楼2011-12-16 14:20
    回复
      发现书上有些简答题还真是蛋疼!
      1.面向过程编程和面向对象编程的设计思想的主要区别?
      这要在笔试题,还真不好扯的全


      138楼2011-12-16 15:45
      回复
        发现书上有些简答题还真是蛋疼!
        1.面向过程编程和面向对象编程的设计思想的主要区别?
        这要在笔试题,还真不好扯的全


        139楼2011-12-16 15:55
        回复
          一下为引用CSDN论坛中一个帖子的回复~~~~~先借鉴过来,慢慢理解
          面向对象以 数据(属性)为导向,将具有相同一个或者多个属性的物体抽象为“类”,将他们包装起来;而有了这些数据(属性)之后,我们再考虑他们的行为(对这些属性进行什么样的操作),
          面向过程以 功能(行为)为导向,按模块化的设计,在你在脑袋中也许也有一个类似“类”的概念,但是表现出来的是属性与行为的分离,面向对象以 数据(属性)为导向,将具有相同一个或者多个属性的物体抽象为“类”,将他们包装起来;而有了这些数据(属性)之后,我们再考虑他们的行为(对这些属性进行什么样的操作),
          面向过程以 功能(行为)为导向,按模块化的设计,在你在脑袋中也许也有一个类似“类”的概念,但是表现出来的是属性与行为的分离,
          


          141楼2011-12-16 15:57
          回复
            蛋疼,复制粘贴都出问题了 下面还有~~~~~~~~~~
            从 OOP 来说分为,基本可氛围“类库的生产者”和“类库的消费者”。
            类库的消费并不都是具备了面向对象思想的人,通常知道如何继承和派生新对象就可以使用类库了,然而我们的思维并没有真正的转过来,使用类库只是在形式上是面向对象,而实质上只是库函数的一种扩展。 因此,你要站在 类库生产者 的角度去考虑,比如去考虑 .NET 类库为什么要这样设计,这也是一条很好的学习路线
            


            143楼2011-12-16 16:00
            回复
              我擦 联系粑粑 蛋疼~~~~~


              144楼2011-12-16 16:01
              回复
                【程序29】
                题目:求一个3*3矩阵对角线元素之和
                1.程序分析:利用双重for循环控制输入二维数组,再将a[i][i]累加后输出。
                做几道题


                145楼2011-12-16 17:16
                回复
                  import java.util.Scanner; public class Test29 {
                  /**
                  *
                  * 【程序29】 题目:求一个3*3矩阵对角线元素之和 1.程序分析:利用双重for循环控制输入二维数组,再将a[i][i]累加后输出。 1 2 3
                  * 4 5 6 7 8 9
                  *
                  * 3*3矩阵 也就是一个3行3列的二维数组
                  * */
                  // 输入每次输入3个数,每个数字之间用逗号隔开
                  public static void main(String[] args) {
                  Scanner input = new Scanner(System.in);
                  String[] arr = new String[3];
                  // 输入二维数组的元素
                  for (int i = 0; i < 3; i++) {
                  System.out.println("请输入第" + (i + 1) + "行的3个元素");
                  arr[i] = input.next();
                  }
                  String[][] arr1 = new String[3][3];
                  for (int i = 0; i < 3; i++) {
                  arr1[i] = arr[i].split(",");
                  } int[][] arr2 = new int[3][3];
                  for (int i = 0; i < 3; i++) {
                  for (int j = 0; j < 3; j++) {
                  arr2[i][j] = Integer.parseInt(arr1[i][j]);
                  }
                  } // 计算对角线上元素的和,对角线在数组中也就是行和列相等时的元素的和
                  int sum = 0;
                  for (int i = 0; i < 3; i++) {
                  for (int j = 0; j < 3; j++) {
                  if (i == j || i + j == 2) {
                  sum += arr2[i][j];
                  }
                  }
                  } System.out.println("对角线上的元素和为:" + sum);
                  }
                  }


                  146楼2011-12-16 17:17
                  回复
                    你是说按逆序输出可以用这个方法么?


                    147楼2011-12-16 17:22
                    回复
                      【程序33】
                      题目:打印出杨辉三角形(要求打印出10行如下图)
                      1.程序分析:
                      1
                      1 1
                      1 2 1
                      1 3 3 1
                      1 4 6 4 1
                      1 5 10 10 5 1


                      149楼2011-12-17 16:02
                      回复
                        这种按一定规律输出某种元素的题,最好考虑输出结果的美观性。对于杨辉三角,由于其元素是无穷尽的,所以对美观性难以把握,暂时只考虑元素大小小于1000的情况。


                        150楼2011-12-17 16:04
                        回复
                          import java.util.Scanner; public class Test33 { /**
                          * 【程序33】 题目:打印出杨辉三角形(要求打印出10行如下图)
                          *
                          * 实现:将杨辉三角看成一个二维数组,n行n列; 输出n行杨辉三角
                          * */ public static void main(String[] args) {
                          Scanner input = new Scanner(System.in);
                          System.out.println("请输入行数:");
                          int n = input.nextInt(); int[][] arr = new int[n][n];
                          // 第一行的数字1
                          arr[0][0] = 1;
                          for (int i = 0; i < n; i++) {
                          System.out.print(" ");
                          }
                          System.out.println(arr[0][0]); for (int i = 1; i < arr.length; i++) {
                          arr[i][0] = 1;
                          // 输出每一行的第一个数字1
                          for (int j = 0; j < n - i; j++) {
                          System.out.print(" ");
                          }
                          System.out.print(arr[i][0] + " ");
                          // 输出每一行的中间数字
                          for (int j = 1; j < i; j++) {
                          arr[i][j] = arr[i - 1][j - 1] + arr[i - 1][j];
                          //对于输出结果中空格的输出,为了美观起见,当元素为2位数,3位数,希望数字间第位数间距离相等
                          //本程序所采用的空格输出,只适合元素在小于4位数的杨辉三角,如果元素有4位的时候,就不美观了
                          //具体可以运行体会
                          if (arr[i][j] < 10) {
                          System.out.print(arr[i][j] + " ");
                          } else if (arr[i][j] > 9 && arr[i][j] < 100) {
                          System.out.print(arr[i][j] + " ");
                          } else if (arr[i][j] > 100) {
                          System.out.print(arr[i][j] + " ");
                          }
                          }
                          // 每一行末尾的数字1
                          arr[i][i] = 1;
                          System.out.println(arr[i][i]);
                          }
                          }
                          }


                          151楼2011-12-17 16:04
                          回复
                            其实开始也没有想到用二维数组存元素,开始想摸索第n行元素与n的关系~~~后来发现,第n行必须是和n-1行相关的~~~~~~~ 只好用二维数组了


                            152楼2011-12-17 16:06
                            回复
                              忙了一下午的约瑟夫环的问题~~~~主要是刚好学到面向对象,从这个题目,思考的方式似乎一直在意它的过程,于是便思索了一下午怎么用面向对象的思维方式解决这个问题,可是发现最后反而越想越麻烦~~~~~~~~~~~~~~~~~~~最后还是用了以前的程序,学了好多天的面向对象~~总结一下却只发现所谓的继承 多态 封装~~这种设计思想似乎一点没掌握~


                              154楼2011-12-17 20:39
                              回复