标签:面试题 Java 21 int 补码 15 ++ 第四天 --
自增自减运算练习题
1)案例1:定义变量 int a = 10;int b = 5;分别计算a++和++a的结果; 以及--b和b--的结果;
package com.tohka;
public class Demo3 {
public static void main(String[] args) {
/* 案例1:定义变量 int a = 10;int b = 5;
分别计算a++和++a的结果; 以及--b和b--的结果;*/
int a = 10;
int b = 5;
System.out.println(a++);//10 a = 11
System.out.println(++a);//12
}
}
2)案例2:定义变量 int x = 20;int y = 15;
依次计算以下结果:
++x + y;
y-- + x;
x++ + y;
package com.tohka;
public class Demo4 {
public static void main(String[] args) {
/* 案例2:定义变量 int x = 20;int y = 15;
依次计算以下结果:
++x + y;
y-- + x;
x++ + y;*/
int x = 20;
int y = 15;
System.out.println(++x + y); //21+15=36 x = 21 y =15
System.out.println(y-- + x); //15+21=36 x = 21 y =14
System.out.println(x++ + y); //21+14=35 x = 22 y =14
}
}
short s = 5; s = s + 1; 代码是否有错? short s = 5; s += 1; 代码是否有错?
// short s = 5; s = s + 1; 有错, s自动提升类型为int, s + 1 结果为int
// 无法直接给short类型的变量s赋值
进制转换
其他进制转十进制:分别计算基数乘以系数的权次幂求和
十进制转其他进制:辗转相除倒取余
二进制与其他进制转换:8421,从右往左,高位补0
计算机只能存储二进制的数据,且都是存储的他们的补码
正数源码即它的二进制表示,正数的源码补码反码都相同;
负数源码为它的最高位为1的二进制表示,反码为最高位符号位不变,其余位取反,补码在反码的基础上最低位+1
// 案例1: 一个减法程序, 5-3, 使用原码,还原底层运算过程?
/*
1) 计算机存储5,正数,补码形式, 正数补码和原码一致
0000 0101
2) -3补码计算出来
1000 0011 原码
1111 1100 反码
1111 1101 补码
0000 0101
1111 1101
10000 0010 最高位的1溢出,舍掉, 效果变成0000 0010
*/
标签:面试题,Java,21,int,补码,15,++,第四天,-- 来源: https://www.cnblogs.com/chenglong0201/p/15037089.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。