zoukankan      html  css  js  c++  java
  • 两个整数的交换

    1.引进第三个变量

     1 public static void main(String[] argv ) {
     2 int a=1;
     3 int b=2;
     4 int temp=0;
     5 temp=a;
     6 a=b;
     7 b=temp;
     8 System.out.println("a="+a);
     9 System.out.println("b="+b);
    10 
    11 }

    2.不引进第三个变量

    public static void main(String[] argv ) {
    int a=1;
    int b=2;
    a=b+a;
    b=a-b;
    a=a-b;
    System.out.println("a="+a);
    System.out.println("b="+b);
    
    }

    3.用位运算的一个数异或另一个数两次结果是其本身

    public static void main(String[] argv ) {
    int a=1;
    int b=2;
    a=a^b;
    b=a^b;
    a=a^b;
    System.out.println("a="+a);
    System.out.println("b="+b);

    效率是3 快于2快于1     1最慢是因为有第三方的变量   2比3慢是因为任何的运算都会转换成二进制的补码形式来运算 所以2比3多了个转换

    按位运算的限制是:只能用于整数

    求和运算限制:一般用于整数

    第一种不受任何限制:这才是开发中长用的

  • 相关阅读:
    C# 使用SMTP发送附件
    C# 获取文件名及扩展名
    邮件添加附件
    WPF 加载GIF动画
    IIS端口被占用 转载
    ReDim Preserve 的用途
    c# 构造函数执行顺序
    WriteLog
    SMS发送短信设置HttpWebRequest
    Directory.GetFiles
  • 原文地址:https://www.cnblogs.com/xuwangqi/p/11027662.html
Copyright © 2011-2022 走看看