• 第一个java——swap()交换方法


    其实这学期的java课开了将近四星期了,加上开学前的小小预习。编写不下于二十几个java了。

    可这一有关swap()方法的java确实是首次迷惑不解到处寻求解决的程序。

    课堂上老师有关类、方法、对象的讲解还没消化的时候编写swap()就把我绕得更晕了。

    原题如下:

    已知如下一个类:

    class A

    {

      int a1,a2;

      A(int i, int j)

      { a1= i; a2 = j;}

    }

    要求编一个方法swap()用来交换A类的两个对象的成员变量的值。

    一番折腾之后的代码:

    class A {
    
        int a1,a2;
        
        
        A(int i,int j)
        {a1=i;a2=j;}
        
        public void swap()                                /*swap函数无形参 */
        {
            int m;
            m=a1;a1=a2;a2=m;
        }
        
        public static void main(String args[])
        {
            A pt=new A(2,4);
            System.out.println("a1= "+pt.a1+",a2= "+pt.a2);
            pt.swap();
            System.out.println("a1= "+pt.a1+",a2= "+pt.a2);
        }
    }

    结果正确。

    之前失败代码遗失,不能对比。

    但我清楚记得之前是纠结在swap()的形参上面,一面知道按值传递无法交换(根据C带出来的想法,但对与解释概念不清),一面用复杂类型(类、数组、接口)中的类,又总是指代不清,频频受阻。还有,就是成员变量a1,a2的作用域、构造方法对对象的初始化作用。

    总结程序失败原因:首先概念理解不清晰,理不清相互关系;再者开始时对待问题的思路乱,知道一点就往上凑,从简单的角度切入问题有助解决问题。

  • 相关阅读:
    XML实例入门2
    XML入门
    XML实例入门1
    C语言复合梯形公式实现定积分
    一些界面库比较以及如何选择界面库
    网络阅读开篇
    vs2008 edit spin 十六进制实现
    jquery操作cookie
    Excel导入到DataTable
    SQL 查找某个字段的首字母
  • 原文地址:https://www.cnblogs.com/hhccdf/p/3341069.html
Copyright © 2020-2023  润新知