Java学习笔记之基础应用(2015.3.21)

最近打算好好学习下Java,所以打算记录下一些知识点或者是值得记住需要记住的代码吧!

1.灵活使用位运算实现加密算法
可以使用“^”异或运算符把字符串与一个特定值进行异或运算,这样就可以得到一个加密后的字符串,这就是一个简单的加密算法。
简单的例子如下:

import java.util.Scanner;public class TestCode {public static void main(String[] args) {Scanner in = new Scanner(System.in);System.out.println("请输入一个英文字符串或解密字符串");String password = in.nextLine(); // 获取用户输入char[] array = password.toCharArray(); // 获取字符数组int length = array.length;for (int i = 0; i < length; i++) { // 遍历字符数组array[i] = (char) (array[i] ^ 20000); // 对每个数组元素进行异或运算}System.out.println("加密或解密结果如下 ");System.out.println(new String(array)); // 输出结果in.close();}}

执行的结果如下:
这里写图片描述

2.对于位移运算,左移n位表示乘以2的n次方,而右移n位等于除以2的n次方。

简单的代码示例:

import java.util.Scanner;public class TestCode {public static void main(String[] args) {Scanner in = new Scanner(System.in);System.out.println("请输入一个整数");int number = in.nextInt(); // 获取用户输入System.out.println("你输入的数字是: " + number);System.out.println("该数字乘以2的结果为:" + (number << 1));System.out.println("该数字乘以4的结果为:" + (number << 2));System.out.println("该数字除以2的结果为:" + (number >> 1));System.out.println("该数字除以4的结果为:" + (number >> 2));in.close();}

结果为:
这里写图片描述

3.利用异或运算实现两个变量的互换
这也是异或运算的应用之一,可以省略临时变量,达到互换两个变量的效果。

代码如下:

import java.util.Scanner;public class TestCode {public static void main(String[] args) {Scanner in = new Scanner(System.in);System.out.println("请输入变量A的值");int A = in.nextInt(); System.out.println("请输入变量B的值");int B = in.nextInt();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);in.close();}}

运行结果为:
这里写图片描述
异或及其他运算符都不会改变变量本身的值,即“A^B”是没有意义的,必须要有赋值才行。

不过这个方法应该是转换两个同类型的变量,如果是不同类型的变量还是使用临时变量会方便简单点。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/409170.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

dw网页设计期末设计一个网页_Dreamweaver网页设计期末模拟试题(1)

山东广播电视大学开放教育Dreamweaver网页设计期末模拟试题 (1)一、单项选择题1&#xff0e;下图为Dreamweaver 8的新建文档页面&#xff0c;一般情况下&#xff0c;创建完全空白的静态页面应选择()。A. 基本页类别中的“HTML”选项B. 基本页类别中的“HTML模板”选项C. 动态页…

直接拿来用!10款实用Android UI工具

转载地址&#xff1a;http://blog.csdn.net/bboyfeiyu/article/details/13295233 移动应用的UI设计就好似达摩克利斯之剑&#xff0c;一方面&#xff0c;一个视觉、交互、体验良好的UI可以加强应用在用户心目中的形象和识别性。而另一方面&#xff0c;一个体验糟糕的UI设计不仅…

o_rdonly_O_RDWR, O_CREAT等open函数标志位在哪里定义? | 学步园

查了下O_RDWR, O_CREAT等定义&#xff0c;终于找到了。我的系统是Fedora12, 其定义在文件&#xff1a;/usr/include/asm-generic/fcntl.h&#xff0c;部分定义如下&#xff1a;#include /* open/fcntl - O_SYNC is only implemented on blocks devices and on fileslocated on …

上百个Android开源项目分享

转载地址&#xff1a;[http://blog.csdn.net/bboyfeiyu/article/details/12234163] 上百个Android开源项目分享&#xff0c;希望对android开发有帮助。 Android PDF 阅读器 http://sourceforge.net/projects/andpdf/files/ 个人记账工具 OnMyMeans http://sourceforge.net/p…

批量读入一个文件夹中文件的数据操作实例

批量处理 > coo dir("test") > path "/panfs/TC_FUN/USER/group3/yanzengli/other/study/R_study/knowledge/test" > doc_path sapply(coo, function(names) paste(path, names, sep/)) >doc <- sapply( doc_path, function(doc) readLi…

http拨测是什么意思_HTTP 501 是什么意思?

意思是服务器不支持当前请求所需要的某个功能。当服务器无法识别请求的方法&#xff0c;并且无法支持其对任何资源的请求。HTTP状态码由 RFC 2616 规范定义的&#xff0c;并得到 RFC 2518、RFC 2817、RFC 2295、RFC 2774 与 RFC 4918 等规范扩展。所有状态码的第一个数字代表了…

java pdf文件压缩_PDF文件压缩转换教程

现在在很多的网站上传文件的时候&#xff0c;不知道大家有没有遇到因为pdf文件太大&#xff0c;不能上传这种情况。还有很多限制PDF文件大小&#xff0c;由于PDF文件较多&#xff0c;那么就会导致效率大大减小。如果PDF文件过大进行PDF文件传输会很慢很麻烦&#xff0c;想要快速…

hadoop之blockreport

工作中有一套hadoop集群&#xff0c;该集群也作为对外的nginx服务&#xff0c;用来存储了大量的图片。 近期nginx访问经常出现超时访问的情况。 查看log&#xff0c;发现原来的report 频率为1小时一次&#xff0c;但是由于report 需要收集datanode 上的block使用情况&#xff0…

Android学习问题:关于AlertDialog中自定义布局带有的EditText无法弹出键盘

最近在用到AlertDialog的时候&#xff0c;自定义了其布局文件&#xff0c;其中带有EditText&#xff0c;但是发现在手机上使用的时候&#xff0c;点击EditText却没有弹出键盘&#xff0c;在网上搜索了下&#xff0c;看到有好几种解决方法&#xff0c;试过其中一些方法&#xff…

powermockito教程_Mockito与PowerMock的使用基础教程

一、Mockito与PowerMock简述Mockito与PowerMock都是Java流行的一种Mock框架&#xff0c;使用Mock技术能让我们隔离外部依赖以便对我们自己的业务逻辑代码进行单元测试&#xff0c;在编写单元测试时&#xff0c;不需要再进行繁琐的初始化工作&#xff0c;在需要调用某一个接口时…

U8远程接入客户端重新安装问题

系统检测到已经安装了旧版本客户端软件 解决&#xff1a;[-HKEY_LOCAL_MACHINE\SOFTWARE\Comexe Ras Sys]删掉这个就可以了 转载于:https://www.cnblogs.com/martian6125/archive/2013/01/30/9631101.html

Android控件用法总结之EditText

最近毕业设计也快做完了&#xff0c;因为也是边学Android边做毕设&#xff0c;而且也因为是初学&#xff0c;所以用了比较长时间&#xff0c;现在也是希望记下这段时间写Android的一些技巧方法或者是问题。 首先是关于EditText这个控件&#xff0c;这个控件用的也是非常普遍的…

js 循环拆词_javascript forEach通用循环遍历方法

循环遍历一个元素是开发中最常见的需求之一&#xff0c;那么让我们来看一个由框架BASE2和Jquery的结合版本吧.上一次的错误太多&#xff0c;排版也出现了问题&#xff0c;重写了一遍&#xff0c;希望大家支持.循环遍历一个元素是开发中最常见的需求之一&#xff0c;那么让我们来…

解决Tocmat6.x的catalina.out日志不断增加问题

实际的线上环境&#xff0c;如果使用tomcat作为运行容器&#xff0c;需要注意默认的tomcat的日志配置&#xff0c;在线上很容易导致产生大量垃圾log&#xff0c;有可能会导致tomcat不堪重负而down掉&#xff0c; 为了避免产生上述问题&#xff0c;则需要进行配置调整。 修改$TO…