(10.16)java小作业!

Posted 不只学Java

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(10.16)java小作业!相关的知识,希望对你有一定的参考价值。

  相信大家刚刚学习java多多少少都会写一些java的基础编程来练练手感,我也不例外!今天想和大家分享一下我最近所接触到的比较有趣的java小编程!

  已知a已被赋值,b已被赋值,请编写java程序实现a与b值的互换:

  其实这道题挺经典的,无论是C语言也好,java也好,都把这道题作为入门的小作业,它的解法如下:

1 public class Demo{
2     public static void main(String[] args){
3         int a=1;//为a赋值
4         int b=2;//为b赋值
5         int temp=a;//新的变量
6         a=b;
7         b=temp;//a与b互换
8   }  
9 }

  解答这道题的方法通常都是初始化一个新的变量,以该变量作为中间变量,来防止a或者b被覆盖,通过这样的方法来解这道题。那么,除了这种常规的解题方法还有别的解题方法么?

  答案是肯定的,下面我会为大家再列举两种解题方法,有其他解题的方法也欢迎大家补充!

  1.加减法

public class Demo {
    public static void main(String[] arg) {
        int a = 1;
        int b = 2;
        a = b-a;
        b = b-a;
        a = b+a;
    }

}

  2.异或法

public class Demo {
    public static void main(String[] arg) {
        int a = 1;
        int b = 2;
        a = a^b;
        b = a^b;
        a = a^b;
    }

}

  其实,不管是加减法也好,异或法也好,这两种解题方法都是我们解题时思维的延伸,也是我们思维逻辑的一种改变,毕竟java就是一堆积木,所有的一切都是通过一步一步的组合来完成的,而完成品是什么样的取决于我们的思考方式和想象力,所以千万不要只局限于一种解法,要勇于去扩展自己的思维,改变自己的逻辑,才能发现更有趣的世界!

 

以上是关于(10.16)java小作业!的主要内容,如果未能解决你的问题,请参考以下文章

201621123062《java程序设计》第九周作业总结

软件工程(2018)第二次结对作业

java课堂小作业

微信小程序代码片段

201621123042《java程序设计》第九次作业

关于java的一些小知识(课程作业02)