摘要: public class TestClass4 { public static void main(String[] args){ int i=012; int j=034; int l=077; int k=(int)056L; short s=1; s+=1; //s=s+1;错误 char x='x'; System.out.println(false?i:x); System.out.println(false?10:x); }}Jav... 阅读全文
posted @ 2013-12-24 20:17 曹守鑫 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 这种不同是因为在c语言中,每个变量在它的生命周期内的每个时间点都只能有一个唯一的值。因此变量在每一次自增运算时,变量所对应内存区域的内容就被重写了。而在java中,执行sum1=(i++)+(i++);创建了2个临时的整型变量对象,对来存储每次自增运算的结果。java采用了这种中间缓存变量的机制#include #include using namespace std;int main(){ int i=0; int sum=(i++)+(i++); cout<<"i="<<i<<" sum="<<sum& 阅读全文
posted @ 2013-12-24 16:49 曹守鑫 阅读(494) 评论(0) 推荐(0) 编辑
摘要: public class TestClass1 { static { int x=5; } int z; static int x,y; public static void main(String[] args){ x--; myMethod(); System.out.println(x + y++ + x); } private static void myMethod(){ y=x++ + ++x; System.out.println("y="+y+" x="+x); }}answer=... 阅读全文
posted @ 2013-12-24 16:12 曹守鑫 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 类中声明的静态变量在递归调用中的值不会发生变化,但是对于非静态变量递归过程中会发生变化,初始化为0static声明的为类变量,而非static声明的为实例变量(byte,short,char)-int-long-float-double:低级到高级自动类型转换,高级到低级需要强制转换,包装类型过滤类型能够转换;对于java的变量,我们知道有成员变量和局部变量。关于他们的初始化,基本上所有书上都会写。成员变量,java会帮助你初始化,局部变量,则需要程序员自己初始化。对于类的成员变量。不管程序有没有显示的初始化,Java 虚拟机都会先自动给它初始化为默认值。规则为:1、整数类型(byte、sho 阅读全文
posted @ 2013-12-24 15:59 曹守鑫 阅读(489) 评论(0) 推荐(0) 编辑