先++,后++,逻辑运算符,内存划分小知识
来源:互联网 发布:途宝飞鲸软卡 知乎 编辑:程序博客网 时间:2024/05/19 12:13
Java语言基础
1
int a=3,b;
b=a++ 问:这里的b的值为多少? 这里b的值为3,当a进行自增运算时,会给a一片空间存入a=3,然后使a进行自增,自增后的值赋给变量a原来的区域,而最后赋值得过程中是之前a的预存值a=3。
b=++a 同问?这里的值为4 这里取得是a自增运算完之后的值
int i=3;
i=i++; 这里i的值同样为3
2
标准逻辑运算符与条件逻辑运算符的区别?
对于标准逻辑运算符,需要对所有子表达式求值之后,才能得到结果值,而对于条件逻辑运算符,对其左操作求值后,如果能确定其结果,就不对右操作数进行求值
3
一个数异或一个数两次结果还是这个数
4
short s=3 ; //这里其实发生了强制转换,把整型3的值强制转换为short
s+=4; // 编译可以通过这里发生强制转换,把整型4 转换为short类型
s=s+4; //这里编译不通过 因为可能会损失精度
byte b=4;
byte b1=3
byte b2=7;
b=b1+b2; //这里编译不通过 因为b1 b2 为变量无法判断大小,所以同样可能会丢失精度
5
类型转换时,以占用内存较大类型为主进行转换
6 赋值发生时,必须将赋值运算符右边的表达式的值强制转换为左边变量的类型
7 if 语句中的一个小知识
public class Test1 {
public static void main(String[] args) {
int x=2;
if(x++>1)// x先进行一次运算
System.out.println(x); //输出3
}
}
函数:
明确一:函数的结果是什么?
明确二:这个功能的实现过程中是否需要未知的元素参与运算?
返回值类型与参数类型无直接关系
内存的划分:
1 寄存器
2 本地方法区
3 方法区
4 栈内存
存储的是局部变量,而且变量所属的作用域一旦结束,该变量就自动释放
5 堆内存
存储是数组和对象,凡是new建立在堆中
特点:
1 每一个实体都有首地址值
2 堆内存的每一个变量都有默认初始化值 int 0,float 0.0 double 0.0f boolean false char "u\0000"
3 垃圾回收机制
- 先++,后++,逻辑运算符,内存划分小知识
- 内存的小知识
- 内存回收小知识
- 内存小知识&&&&gradle小知识
- 些关于逻辑运算符的知识
- Acticle 21:逻辑运算符知识小记
- javaScript的!逻辑运算符小技巧整理
- Android 内存管理小知识
- java内存分配小知识
- java 自我知识总结(二) 逻辑运算符
- 老男孩指导学生先做人后做事小案例
- 内存划分
- 内存划分
- 内存划分
- 内存划分
- 数据库内存的使用小知识
- 关于C/C++内存一点小知识
- 关于内存分配的一点小知识
- openflow初学者入门笔记二(openflow 1.0 and openflow 1.3)
- acm 1009哈夫曼编码(同1003)
- 洗牌
- Qt 简单爬虫开发
- poj2288(状态压缩dp)
- 先++,后++,逻辑运算符,内存划分小知识
- 2013年山东省第四届ACM大学生程序设计竞赛-Alice and Bob (找规律+二进制)
- JVMGC——堆内存的分代
- Android studio遇到在真机运行时出现adb not respond if you would like to retry问题解决方法
- 2015-2016国内搜索引擎排名
- 数据库之左外连接、右外连接、全外连接
- android 从手机相册中选择一张照片
- 任何环境都使用相同的数据库
- 数组