⑴ java中对一个数进行取反操作到底是怎么计算的(包括正数和负数),负数的原码到底如何表示.
先取得数的反码 然后按位取反 此时得到的是补码(因为在JAVA中是使用补码来表示二进制数据的) 再变为原码就行了 负数的原码就是1XXXXX 第一位是符号位 后面是数值位
⑵ java如何把 int型负数转换成 int型正数
将负数转化成正数的方法:
1、对已知是负数的数值转化方法:假设a为已知负数,则intb=-a;则b为所需正数;
2、对不确定正负性的数值转化方法:假设有a,正负不确定,则可用:intb=Math.abs(a);取绝对值的方式来将数值转化成正数。
(2)java把正数变负数扩展阅读:
整数(int类型的常量)有几种书写形式,程序中的整数一般采用十进制写法。用十进制方式写出的一个整数就是普通数字字符组成的一个连续序列,其中不能有空格、换行或其他字符。C语言规定十进制表示的数字不能是0,除非要写的整数本身就是0。下面是一些整数的列子。
⑶ java键盘输入一个数如果是正数屏幕提示为正数如果是负数屏幕提示为负数否则提示这个数既不是整数也不
import java.util.Scanner;
public class studentgrade {
public static void main(String args[]){
int grade;
System.out.println("请输入数");
grade = new Scanner(System.in).nextInt();
if(grade>0){
System.out.print("这个数正数");
}else{
if(grade==0){
System.out.print("这个数是0");
}else{
System.out.print("这个数负数");
}
}
}
}
⑷ 如何把正数变为负数
你好,把正数变成负数,可以用乘法:当负数1×负数2=(负数1×负数2) =正数 负数×正数=-(正数×负数)=负数,也就是乘一个负数久了变成负数了。
⑸ Java二进制正数强制转换byte后变负数的问题。
0b11101001
正好8位一个字节,第一个位是符号位。
整型数在计算机中用补码存储的。
所以由补码11101001求原码
(负数求原码除了符号位,其他位依次取反最后加一,或者先减一再取反,结果一样的)
得到原码10010111 就是 -23。
⑹ java怎么让一个正数变成负数
要将负数转换为正数(这称为绝对值),请使用Math.abs()。 此Math.abs()方法的工作方式如下:“number = (number < 0 ? -number : number);”。
看一个完整的例子:
packagecom.mkyong;
publicclassapp{
publicstaticvoidmain(String[]args){
inttotal=1+1+1+1+(-1);
//output 3
System.out.print1n("Total:”+total);
inttotal2=1+1+1+1+Math.abs(-1);
//output5
System.out.print1n("Total2(absolutevalue):”+total2);
}
}
输出量
Total:3
Total2(absolutevalue):5
在这种情况下,Math.abs(-1)会将负数1转换为正数1。
⑺ JAVA中如何使一个数组中的比较大的正数显示成负数
遍历这个数组,找到那个比较大正数的下标,然后显示的时候加个负号。
⑻ 如何把一个正数变成负数
1、假如区域中全是正数,可在空闲单元格输入“-1”,复制;选中区域,“选择性粘贴/运算/乘/确定”,即可将正数一次都变为负数。 2、假如A列是正数与负数杂陈,拟把其中的正数改为负数,原负数维持原状,则可在辅助列输入公式“=IF(A10,-A1,A1)”,向下复制到需要处即可。
⑼ java中怎么给一个整数赋值为负数
int s = -(h/w); 你这个的话,定义的是整数,如何h比w小的话,s就是一个0。如果你需要是看到数据的话,你定义float s = -(h/w)就可以了。
⑽ JDK Integer.java的toString为什么i是正数要转换为负数处理
Integer.max_value = 01111111 111111111111111111111111
+1 = 10000000 00000000 00000000 00000000
最高位是符号位为1,这个数是负数,负数的源码是补码取反+1,刚好等于Integer.min_value
结果当然是负数了,Integer的最小值