锁定老帖子 主题:关于++的一道面试题
精华帖 (0) :: 良好帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2010-10-03
JAVA 基础啊
J++是先赋值,再运算 ++J是先运算,再赋值 |
|
返回顶楼 | |
发表时间:2010-10-03
感觉面试的经常就是从题库里拿一些题来的,而这些题又很少真的会在现实编程中遇到
|
|
返回顶楼 | |
发表时间:2010-10-03
最后修改:2010-10-03
wmcoo 写道 JAVA 基础啊
J++是先赋值,再运算 ++J是先运算,再赋值 看清楚这个题目,是j=j++;按你说的j++是先赋值再运算,那应该是先j=j;然后又j=j+1;那结果应该不是j=0;的呀 重要的是j=j++;这块在c语言和java中是一样的处理机制的 |
|
返回顶楼 | |
发表时间:2010-10-03
wenjinglian 写道
面试碰到这样一道题 public static void main(String args[]){
四个选项: A.99 B.100 C.0 D.1
我当时想了下,选择了B。
面试时看见答案打了个X,回家试了答案确实不对。
还是有点疑惑。 给他写==你妹 见到这样的题目,转身就走。不值得浪费时间。 |
|
返回顶楼 | |
发表时间:2010-10-04
我还以为j=99呢
运行一下,结果j=0 |
|
返回顶楼 | |
发表时间:2010-10-04
以前还真没有认真想过这样写i=i++ 呢
|
|
返回顶楼 | |
发表时间:2010-10-05
同bs这样的面试题
|
|
返回顶楼 | |
发表时间:2011-04-10
说下我的理解吧
首先i,j都是基本数据类型,所以应该是分配栈内存 j++会在分配新的内存空间K 但这个j++变量的作用域仅局限在for{ }中,所以当执行流完成for循环后 K的内存空间被销毁,再赋值的话,应该还是0 自己瞎想的,欢迎拍砖 |
|
返回顶楼 | |