文档章节

实现两个变量交换值

屈耕
 屈耕
发布于 2015/06/17 10:39
字数 173
阅读 13
收藏 0
点赞 0
评论 0
static void Main(string[] args)
        {
            int a = 10, b = 11;
            a = a + b;
            b = a - b;
            a = a - b;
            Console.Write("a=" + a + ";b=" + b);
            Console.ReadKey();
        }

第二种方法:

static void Main(string[] args)
        {
            int a = 10, b = 11;
            //a = a + b;
            //b = a - b;
            //a = a - b;
            a = a ^ b;
            b = a ^ b;
            a = a ^ b;
            Console.Write("a=" + a + ";b=" + b);
            Console.ReadKey();
        }

第三种:

 static void Main(string[] args)
        {
            int a = 10, b = 11;
            //a = a + b;
            //b = a - b;
            //a = a - b;

            //a = a ^ b;
            //b = a ^ b;
            //a = a ^ b;

            a = a * b;
            b = a / b;
            a = a / b;
            Console.Write("a=" + a + ";b=" + b);
            Console.ReadKey();
        }

其中第二种方式最优,位运算相对较快

还有一种就是借助第三方变量 实现 

static void Main(string[] args)
        {
            int a = 10, b = 11, temp;
            temp = a;
            a = b;
            b = temp;
            Console.Write("a=" + a + ";b=" + b);
            Console.ReadKey();
        }


© 著作权归作者所有

共有 人打赏支持
屈耕
粉丝 0
博文 9
码字总数 4801
作品 0
成都
高级程序员
Java中交换两个整数变量的值

本文发表在本人GItHub主页,请移步Java中交换两个整数变量的值 阅读原文。 需求 如下,我们定义了两个整数变量,并且分别进行了赋值,下面,我们需要实现的就是将x的值赋值给y,将y值赋值给x...

FunGa ⋅ 2015/11/02 ⋅ 0

异或交换变量

通常的交换两个变量a,b的过程为 int temp; temp=a a=b; b=temp; 需借助上面的第3个临时变量temp. 采用下面的方法,对于给定两个整数a,b,下面的异或运算可以实现a,b的交换,而无需借助第3个临...

李文良 ⋅ 2015/10/12 ⋅ 0

算法研究之不使用临时变量实现两个值的交换

变量值的交换经常在程序中使用,一般方法是使用一个临时变量,交换两个数的值,其实,不使用临时变量,依然可以实现这一功能。 1、常规交换方法 int a,b,temp;temp=a;a=b;b=temp;2、通过指针...

eclipse_xu ⋅ 2012/12/14 ⋅ 0

【C++的探索路2】内存空间,引用与函数

上节主要对C++结构化编程的基本架构进行了一个简单的梳理。本系列第二篇文章将对不同区域的内存空间存放什么东西,以及引用与函数进行相应简单的解释与练习。本文章主要是一些基础性概念问题...

u010369450 ⋅ 2017/10/19 ⋅ 0

三张图讲清楚Java中的方法的参数传递机制

一 Java中方法的参数传递机制介绍 Java中方法的参数传递机制只有一种:值传递。 二 应用举例 1 代码示例 Java代码 下载 class DataWrap { int a; int b; } public class ReferenceTransferT...

rfuhx7521 ⋅ 2016/09/26 ⋅ 0

C Primer Plus 第9章 函数 9.6 改变函数中的变量

有时我们需要用一个函数改变另一个函数中的变量。例如,排序问题的一个常见任务是交换两个变量的数值。假设要交换两个变量x和y的数值: x=y; y=x; 上面这段简单的代码并不能实现这个功能,因...

idreamo ⋅ 2016/07/15 ⋅ 0

【算法】算法的艺术(五)

利用位运算求整数的原码或补码 利用位运算求任意整数的原码或补码。   实例解析:   整数在内存中本来就是用补码存放的,若要求出补码,只需求出内存中的每一位二进制数即可。而原码,若...

wbf961127 ⋅ 2017/11/06 ⋅ 0

​Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数

Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数 7.4.4 为外部参数设置默认值 开发者也可以对外部参数设置默认值。这时,调用的时候,也可以省略参数传递本文选自Swi...

大学霸 ⋅ 2015/04/10 ⋅ 0

交换两个值,不用临时变量(C位运算)

通常我们交换两个值,都是用一个临时的变量temp,拿交换a,b的值为例,通常的做法是: temp = a; a = b; b = temp; 不过利用位运算,真的是方便很多: 假如 a = 3,b = 4。想将a和b的值互换,可...

ustbgaofan ⋅ 2014/09/28 ⋅ 3

【技巧】不使用中间变量交换两个变量的值

最近在论坛里又看到一个很熟悉的问题:不使用中间变量交换两个变量的值。网上流传的大概有两种方法,在这里总结一下。 【方法一】 假设需要交换的两个变量都是整型,变量名分别为a和b。 a = ...

YHZhu ⋅ 2010/07/08 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

博客迁移到 https://www.jianshu.com/u/aa501451a235

博客迁移到 https://www.jianshu.com/u/aa501451a235 本博客不再更新

为为02 ⋅ 34分钟前 ⋅ 0

win10怎么彻底关闭自动更新

win10自带的更新每天都很多,每一次下载都要占用大量网络,而且安装要等得时间也蛮久的。 工具/原料 Win10 方法/步骤 单击左下角开始菜单点击设置图标进入设置界面 在设置窗口中输入“服务”...

阿K1225 ⋅ 今天 ⋅ 0

Elasticsearch 6.3.0 SQL功能使用案例分享

The best elasticsearch highlevel java rest api-----bboss Elasticsearch 6.3.0 官方新推出的SQL检索插件非常不错,本文一个实际案例来介绍其使用方法。 1.代码中的sql检索 @Testpu...

bboss ⋅ 今天 ⋅ 0

informix数据库在linux中的安装以及用java/c/c++访问

一、安装前准备 安装JDK(略) 到IBM官网上下载informix软件:iif.12.10.FC9DE.linux-x86_64.tar放在某个大家都可以访问的目录比如:/mypkg,并解压到该目录下。 我也放到了百度云和天翼云上...

wangxuwei ⋅ 今天 ⋅ 0

PHP语言系统ZBLOG或许无法重现月光博客的闪耀历史[图]

最近在写博客,希望通过自己努力打造一个优秀的教育类主题博客,名动江湖,但是问题来了,现在写博客还有前途吗?面对强大的自媒体站点围剿,还有信心和可能型吗? 至于程序部分,我选择了P...

原创小博客 ⋅ 今天 ⋅ 0

IntelliJ IDEA 2018.1新特性

工欲善其事必先利其器,如果有一款IDE可以让你更高效地专注于开发以及源码阅读,为什么不试一试? 本文转载自:netty技术内幕 3月27日,jetbrains正式发布期待已久的IntelliJ IDEA 2018.1,再...

Romane ⋅ 今天 ⋅ 0

浅谈设计模式之工厂模式

工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻...

佛系程序猿灬 ⋅ 今天 ⋅ 0

Dockerfile基础命令总结

FROM 指定使用的基础base image FROM scratch # 制作base image ,不使用任何基础imageFROM centos # 使用base imageFROM ubuntu:14.04 尽量使用官方的base image,为了安全 LABEL 描述作...

ExtreU ⋅ 昨天 ⋅ 0

存储,对比私有云和公有云的不同

导读 说起公共存储,很难不与后网络公司时代的选择性外包联系起来,但尽管如此,它还是具备着简单和固有的可用性。公共存储的名字听起来也缺乏专有性,很像是把东西直接堆放在那里而不会得到...

问题终结者 ⋅ 昨天 ⋅ 0

C++难点解析之const修饰符

C++难点解析之const修饰符 c++ 相比于其他编程语言,可能是最为难掌握,概念最为复杂的。结合自己平时的C++使用经验,这里将会列举出一些常见的难点并给出相应的解释。 const修饰符 const在c...

jackie8tao ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部