java文件加密抑或运算_Java中使用异或运算符实现加密字符串

Java中使用异或运算符实现加密字符串

通过异或运算符号与一个指定的值进行异或运算,从而改变字符串每个字符的值,这样就可以得到加密后的字符串。

import java.util.Scanner;

public class Encypt {

public static void main(String args[]){

Scanner scan = new Scanner(System.in);

System.out.println("请输入一个英文字符串或解密字符串:");

String password = scan.nextLine(); //获取用户输入

char[] array = password.toCharArray(); //获取字符数组

for(int i=0;i

{

array[i]=(char)(array[i]^20000); //对每个数组元素进行异或运算

}

System.out.println("加密或解密结果如下:");

System.out.println(new String(array));

}

}

输出结果:

请输入一个英文字符串或解密字符串:

www.sohu.com

加密或解密结果如下:

乗乗乗与乓乏么乕与乃乏乍

总结:

位运算可以实现很多高级,高效的运算。比如说加密,乘法中的n次方就是右移n位,速度还快。

时间: 2015-06-14

描述符 描述符是你添加到那些定义中来改变他们的意思的关键词.Java 语言有很多描述符,包括以下这些: 可访问描述符 不可访问描述符 应用描述符,你可以在类.方法.变量中加入相应关键字.描述符要先于声明,如下面的例子所示(斜体): public class className { // ... } private boolean myFlag; static final double weeks = 9.5; protected static final int BOXWIDTH = 42; p

Java程序中,需要进行大量的计算,所以要使用到运算符号,下面来给大家说明Java赋值运算符如何运用. 赋值运算符以符号"="表示,它是一个二元运算符(对两个操作数作处理),其功能是将右方操作数所含的值赋给左方操作数.例如: int a = 100; 该表达式是将100赋值给变量 a .左方的操作数必须是一个变量 ,而右边的才做书则可以是任何表达式,包括变量(如 a .number).常量(123.'book').有效表达式(如55*66).         1:使用赋值运算符为变量赋

6b5aa0751a6f1e6a9d0b665a02cc1f46.gif

首先,移位运算符有三种,其操作类型只支持:byte / short / char / int和long五种. << 左移运算符,表示将左边的操作数的二进制数据向左移动*位,移动后空缺位以0填充,多余位舍弃.(等同于乘2的n次方) >> 右移运算符,二进制数据向右移动*位,就在其二进制数据后抹掉几位?(这里还不错定,但个人理解是这样的)(等同于除2的n次方) >>> 无符号右移运算符,不管移动前最高位是0还是1,右移后左侧产生的空位部分都以0来填充. 下面我们借一个

6b5aa0751a6f1e6a9d0b665a02cc1f46.gif

创建一个类,在该类的主方法中创建标准输入流的扫描器对象,提示用户输入一个整数,并通过扫描器的方法来接受这个整数,然后通过三元运算符判断该数字与2的余数,如果余数为0,说明其是偶数,否则是奇数. 复制代码 代码如下: import java.util.Scanner;public class ParityCheck {    public static void main(String[] args){        System.out.println("请输入一个整数:");

>表示大于,如:if(a>b)...结果是boolean类型 >>表示带符号右移,如:int i=15; i>>2的结果是3,移出的部分将被抛弃. 转为二进制的形式可能更好理解,0000 1111(15)右移2位的结果是0000 0011(3),0001 1010(18)右移3位的结果是0000 0011(3). >>>无符号右移: 按二进制形式把所有的数字向右移动对应巍峨位数,低位移出(舍弃),高位的空位补零.对于正数来说和带符号右移相同,对于负数来

6b5aa0751a6f1e6a9d0b665a02cc1f46.gif

一.运算符 运算符包括下面几种: 算术运算符赋值运算符比较运算符逻辑运算符位运算符三目运算符 最不常用的是位运算符,但也是最接近计算机底层的. 1.算术运算符 (1)+的几种用法:加法.正数.字符串连接符 (2)除法的时候要注意一个问题:整数相除,只能得到整数.要想得到小数,可以将数据自身*1.0,即将数据自身先转换为浮点型. 2.赋值运算符 符号 = += -= *= /= %= 注:=为基本的赋值运算符,其他的为扩展的赋值运算符 面试题: (1)short s=1, s = s+1; (2)

自定义列表

:表示列表的范围 **在里面 :上层内容 **在里面 :下层内容 有序列表 :有序列表的范围 --属性 type:设置排序方式,1(默认),a,i.. **在ol标签里面 具体内容 无序列表

本文研究的主要是ConsistentHashing算法代码. 一致性哈希(Consistent Hash) 协议简介 一致性哈希算法在1997年由麻省理工学院提出(参见0),设计目标是为了解决因特网中的热点(Hot pot)问题,初衷和CARP十分类似.一致性哈希修正了CARP使用的简单哈希算法带来的问题,使得DHT可以在P2P环境中真正得到应用. 哈希算法 一致性哈希提出了在动态变化的Cache环境中,哈希算法应该满足的4个适应条件: 平衡性(Balance) 平衡性是指哈希的结果能够尽可能分

88038df10cdf4f2c20d83cc935c4bfe4.png

本文实例为大家分享了Bootstrap选项卡的学习笔记,供大家参考,具体内容如下 tab选项卡

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值