---------------------- <a href="http://edu.csdn.net"target="blank">ASP.Net+Unity开发</a>、&amp;lt;a href="http://edu.csdn.net"target="blank">.Net培训</a>、期待与您交流! ----------------------
今天是学习的第二天,这段时间正在写毕业论文,时间比较紧张,上午和下午时候都在找导师修改开题报告,今天只学了运算符和进制。
今天主要讲的是进制问题,包括进制的计算,转换,用法和运算符。其中还包含了也转义字符等一些小知识点。
这部分知识都是和C语言的重合,原来是自学的C,基础打得比较扎实吧,这些听起来非常轻松。
// int x = 4270;
// x = x/1000*1000;
// System.out.println(x);//结果显示为4000,当进行第一次运算时,x/1000分别都为int,结果不能变成double(4.27),所以第一次运算结果为4
// 字符串数据和任何数据使用+号都是相连接,最终都变成字符串。
// System.out.println("hahaha"+"qqqqq");
// System.out.println("5+5="+5+5);//结果输出为“5+5=55”
// System.out.println("5+5="+(5+5));
// System.out.println("a="+a+",b="+b);//println 中 ln 表示输出完毕时 换行一次
// System.out.println("hello world")//通过\字符来转变后面的字母或者符号的含义。与C语言相同
对于两个值得互换原来只会第一种方法,当老师讲到利用位运算时,才发现还可以这么用为啥运算
class p2
{
public static void main(String[] args)
{
int m, n;
n=3;
m=8;
System.out.println("n="+n+",m="+m);
//第一种 设置第三变量
//int temp;
//temp = n;
//n = m ;
//m = temp;
//System.out.println("n="+n+",m="+m);//通过
//第二种 进行计算
// n = n+m;//当mn数据较大时容易损失精度
// m = n-m;
// n = n-m;
// System.out.println("n="+n+",m="+m);//通过
//第三种 进行位运算
n = n^m;
m = n^m;
n = n^m;//通过
System.out.println("n="+n+",m="+m);
}
}
int x = 2, y;
y= (x>1)?'a':100;
System.out.println("y="+y);//x=1时,输出为100,当x=2时,输出为97,三木预算符会提升‘a’
&无论左边无论true或者false ,右边都运算
&&当左边为false时,右边不运算
||和&&相同
<<就是乘以2的移动位数次幂
>>就是除以2的移动位数次幂
>>最高位补什么由原有数据的最高位值而定。如果最高位为0,右移后用0补空位。
<<无论最高位是什么,右移后,都用0补
一个数异或两次还是原数据(加密、解密)
{
public static void main(String[] args)
{
int num = 60;
int n1= num & 15;//获取60的二进制的最低4位、
System.out.println(n1>9?(char)(n1-10+'a'):n1);
int temp= >>>4;//获取下一组4位。将60的二进制右移4为位,最高位补0
int n2 = temp & 15;
System.out.println(n2>9?(char)(n2-10+'a'):n2);
}
}
---------------------- <a href="http://edu.csdn.net"target="blank">ASP.Net+Unity开发</a>、&amp;lt;a href="http://edu.csdn.net"target="blank">.Net培训</a>、期待与您交流! ----------------------