导航:首页 > 编程语言 > java坐标反算

java坐标反算

发布时间:2024-09-25 00:02:12

java是什么东西

Java说白了就是一门语言,像我们平时学校里学的英语,或者其他外语一样,是和其他人交流的工具,让别人知道你要表达什么,只不过Java语言是面向计算机的,人与机器交流,让计算机懂得我们所要表达的,从而让计算机运行出我们想要的结果。



java是什么东西

㈡ java取反运算符

运算符的优先级!高、
但是equals不是运算符、是个方法。
先计算方法的返回值,然后再!取值

㈢ Java 取反运算符

用以下代码可以实现你要求的功能:
long lang=64509;
String str1=Long.toBinaryString(lang);//将给定的数转为二进制字串
String str2=Long.toBinaryString(~lang);//将给定的数取反转为二进制字串
//将取反后的二进制串取最后的 长度与第一个串长度相等 的子串,这是我们需要的二进制串
String str=str2.substring(str2.length()-str1.length());
//将它转换为十进制整数
int i=Integer.parseInt(str, 2);
System.out.println(i);

具体理论知识如下所示:
先要理解一些概念:
在2进制中,负数是以它正值的补码形式表达
原码:一个整数,按照绝对值大小转换成的二进制数,称为原码。

比如 0000 0000 0000 0000 0000 0000 0000 0101是 5的 原码。
反码:将二进制数按位取反,所得的新二进制数称为原二进制数的反码。

取反操作指:原为1,得0;原为0,得1。(1变0; 0变1)

比如:将5的二进制表达式的每一位取反,得
1111 1111 1111 1111 1111 1111 1111 1010
称:1111 1111 1111 1111 1111 1111 1111 1010 是 0000 0000 0000 0000 0000 0000 0000 0101 的反码。

反码是相互的,所以也可称:

1111 1111 1111 1111 1111 1111 1111 1010 和 0000 0000 0000 0000 0000 0000 0000 0101 互为反码。

补码:反码加1称为补码。
也就是说,要得到一个数的补码,先得到反码,然后将反码加上1,所得数称为补码。
那么,5的补码为:

1111 1111 1111 1111 1111 1111 1111 1010 + 1 =
1111 1111 1111 1111 1111 1111 1111 1011

所以,-5 在计算机中的二进制表达为:
1111 1111 1111 1111 1111 1111 1111 1011
转换为十六进制:0xFFFFFFFB。

====================================

明白了上面的就可以理解怎么求 ~i 了
int型储存32个二进制位,~这个符号是按位取反,就是求i的反码。
即得到1111 1111 1111 1111 1111 1111 1111 1010
上面这串二进制代表一个负数,将它转换成int型过程如下:

1111 1111 1111 1111 1111 1111 1111 1010-1 =
1111 1111 1111 1111 1111 1111 1111 1001

再求反:

0000 0000 0000 0000 0000 0000 0000 0110

这个值就是5的按位取反所得到的int整数的绝对值(注意:5按位取反得到的是负数)

所以转换为int型为:6
即:int型的i=5 取反后的结果为-6

㈣ JAVA中“~”按位取反运算符的一些问题。

首先你要知道现在我们用的多数都是32位机,所以整形数都是4个字节
那么再看看按位取反的结果:
00000000
00000000
00000000
00000101
这是5
00000000
00000000
00000000
00000000
这是0
11111111
11111111
11111111
11111111
这是-1
11111111
11111111
11111111
11111110
这是-2
11111111
11111111
11111111
11111101
这是-3
11111111
11111111
11111111
11111100
这是-4
11111111
11111111
11111111
11111011
这是-5
11111111
11111111
11111111
11111010
这是5取反的结果-6
看懂了吗?

㈤ java中按位取反运算的详解

按位取反就是每一位都取反,所谓取反就是1变0,0变1
比如楼主说的10
二进制表示就是00000000
00000000
00000000
00001010
取反后就是11111111
11111111
11111111
11110101
这在十进制中就是-11
而他的二进制原码表示就是-1011

阅读全文

与java坐标反算相关的资料

热点内容
ghost文件夹无法删除 浏览:84
苹果手机6的通病是什么 浏览:254
安卓系统怎么调4g 浏览:12
linux查看r语言版本 浏览:146
中青校园app是什么级别 浏览:78
数据线的线坏了怎么修复 浏览:297
pr导入xml文件格式不支持 浏览:29
69版本lol里面的ez适合出鬼刀吗 浏览:905
linux文件是否死锁 浏览:829
可以下电视剧的app 浏览:6
文件夹压缩怎么找不到了 浏览:254
xapplem9 浏览:235
买名牌包包哪个网站好 浏览:660
移动3g升级4g网络 浏览:215
怎么在文件名看部分内容 浏览:759
邮政怎么绑定微信银行 浏览:147
java坐标反算 浏览:486
在usb安装linux系统安装 浏览:409
网络ii代2048版本 浏览:82
word办公自动化 浏览:617

友情链接