代码如下:

package test;import java.util.Scanner;
/**@author xpengfei*@version *创建时间:May 10, 2017  5:21:06 PM*//**类信息:不借助第三个变量,实现两个变量之间的互换*/
public class ch_17 {public static void main(String[] args) {Scanner scan=new Scanner(System.in);System.out.println("请输入变量A的值:");long A=scan.nextLong();System.out.println("请输入B的值:");long B=scan.nextLong();System.out.println("A="+A+"\tB="+B);System.out.println("-----:实现变量互换:-----");A=A^B;B=B^A;A=A^B;System.out.println("A="+A+"\tB="+B);}
}

主要是通过异或实现,类比于通过异或符号实现简单的加密功能
第一行的A=A^B 即是将A^B后的一串编码赋值给A以便下面实现A与B得互换;
B=B^A 通过此行代码实现将A得原有值赋给B
A=A^B 将B得原有值赋给A
至此A与B之间已实现互换。

Scanner scan=new Scanner(System.in);System.out.println("请输入一个英文字符串或解密字符串:");String passwd=scan.nextLine();char[]array=passwd.toCharArray();for(int i=0;i<array.length;i++){array[i]=(char)(array[i]^20000);}System.out.println("加密或解密后的结果如下:");System.err.println(new String(array));

代码中的最后一行System.err.println(new String(array));是通过err函数手动输出错误信息。
将结果以错误信息形式输出,更加醒目。

转载于:https://www.cnblogs.com/xpfei/p/7450810.html

不使用第三个变量的情况下,实现两个变量间的互换。相关推荐

  1. 在不借助第三方变量情况下实现两个变量的交换(借助于异或运算)

    下面首先来看一个问题. 假设存在两个int型变量a和b,那么如何实现两个变量值的交换呢. 通常我们的做法,也是最容易想到的做法就是通过定义一个第三方变量,然后借助于该变量来实现变量值的交换. 方法一( ...

  2. 没有第三个变量的前提下交换两个变量_多变量相关性分析(一个因变量与多个自变量)...

    目录: 前言 偏相关或复相关 意义与用途 分析方法: 1. 样本相关系数矩阵.相关系数检验 2. 复相关分析 3. 决定系数 (RMSE的介绍) 小结 一.前言: 继上一篇文章,继续探讨相关性分析,这 ...

  3. 没有第三个变量的前提下交换两个变量_JavaScript 交换值的方法,你能想到几种?

    早期之前,在 JS 中交换值,我们主要还是使用临时变量.ES6 之后,我们可以使用展开运算符号来交换变量,除了这两种方式,你还能想到哪些呢? 本文主要介绍 交换变量的 10 种方法,请过目 1. 使用 ...

  4. 如何在不引入第三个变量的情况下互换两个变量的值

    如何在不引入第三个变量的情况下互换两个变量的值 算术运算 异或运算 解构 总结 例:x = 4:y = 5.如何在不引入第三个变量的情况下互换x与y的值? 算术运算 第一种方法是加法. x = x + ...

  5. C++在不使用任何算术运算符的情况下将两个数字相加(附完整源码)

    C++在不使用任何算术运算符的情况下将两个数字相加 C++在不使用任何算术运算符的情况下将两个数字相加完整源码(定义,实现,main函数测试) C++在不使用任何算术运算符的情况下将两个数字相加完整源 ...

  6. hover在两种情况下的两种用法

    :hover在鼠标移到链接上时添加的特殊样式. 提示: :hover 选择器器可用于所有元素,不仅是链接. 提示: :link 选择器设置了未访问过的页面链接样式, :visited 选择器设置访问过 ...

  7. 【C++】什么情况下会产生临时变量

    临时变量是只在调用期间有效,具有常性的一种变量. 一.值传递 在返回值以值传递(传值和传指针)的形式返回时,会生成临时变量. int sum(int a,int b) {return a + b; } ...

  8. element-ui 按需加载情况下覆盖预置scss变量

    element-ui的默认主题theme-chalk是通过scss预编译的,可以通过修改scss变量达到修改主题的目的. 在项目中改变 SCSS 变量 Element 的 theme-chalk 使用 ...

  9. Python中字符串使用单引号、双引号标识和三引号标识,什么是三引号?什么情况下用哪种标识?

    一.三引号是指三个单引号或者三个双引号: 二.Python中字符串如果以单引号.双引号标识和三引号标识开头,则字符串结尾也必须是对应的标识,不能变更: 三.三者的异同: 1.三者都是字符串,大部分情况 ...

  10. php变量什么情况下加大括号{}

    下面几个比较能说明原因的解释是: 表示{}里面的是一个变量  ,执行时按照变量来处理 在字符串中引用变量使用的特殊包括方式,这样就可以不使用.运算符,从而减少代码的输入量了. 其实输出那块是等同于pr ...

最新文章

  1. 【面试练习题】存在序列:1,1/2,2/3,3/5,5/8,8/13...,求前10项的和
  2. REST WebServices学习
  3. main java game,playgame 一个JAVA编写的飞行小游戏,有基本完整的 框架,适合初学者参照学习 Other s 其他 238万源代码下载- www.pudn.com...
  4. 中位数及带权中位数问题(转)
  5. 使用UI创建vue项目并添加element ui和axios
  6. linux 防火墙 iptables的简单使用
  7. 加速失败远程计算机不能反应,2008 R2 SP1远程桌面如何开启GPU加速?不讨论虚拟机...
  8. pantum打印机驱动安装m6506_奔图PantumM6506NW驱动官方版
  9. 30多岁,你的存款有多少?
  10. 计算方法(一):误差
  11. python爬虫教程书籍-python入门书籍(爬虫方面)有哪些推荐?
  12. 虚拟光驱下载安装和使用,Windows系统如何直接打开iso文件
  13. 推荐:详解AI加速器(最终篇)
  14. 港科报道 | 8位校友入选香港25青年科创先锋人物
  15. Win10安装Eclipse教程
  16. 【异常】because it is a JDK dynamic proxy that implements
  17. 实验2:tga格式图像转换为yuv格式
  18. 推荐给大家12款好用的电脑软件
  19. Fix ‘Clearing orphaned inodes’ on Ubuntu
  20. JS实现键盘移动光标

热门文章

  1. Leetcode 刷题笔记(十七) —— 二叉树篇之公共祖先问题
  2. uestc--758--P酱的冒险旅途
  3. NYOJ--41--三个数从小到大排序
  4. 黑马程序员-JavaAPI-17天-4(Arrays)
  5. SQL Server数据表提示NOLOCK和READPAST
  6. iText 实践的目录(the content of iText in Action)
  7. 几种所见所得的在线编辑器
  8. matlab分析具体问题论文,matlab论文12010245327马文建.doc
  9. java计算一个日子距离_java计算两地距离(公里)
  10. java 表格添加监听_关于Oracle用java实时监听oracle对表的DML操作【技术贴】