java数据类型,进制等(以及笔试小题)

来源:互联网 发布:java base64 转换 编辑:程序博客网 时间:2024/06/05 21:00
JDK(包含JRE):JDK是java development kit,JRE是java运行时环境开发时安装JDK,项目上线运行时安装JRE配置环境变量JAVA_HOME     (JDK安装目录,能看见bin目录的那个根目录复制到变量值)PATH%JAVA_HOME%/bin查看cmd  然后java -version进制转换Java语言基础(不同进制数据的表现形式)(掌握)A:二进制的数据表现形式* 由0,1组成。以0b(b可以大写也可以小写)开头(JDK1.7版本可以表示二进制了) B:八进制的数据表现形式* 由0,1,…7组成。以0开头C:十进制的数据表现形式* 由0,1,…9组成。整数默认是十进制的 D:十六进制的数据表现形式* 由0,1,…9,a,b,c,d,e,f(大小写均可)。以0x开头 Java中的默认转换规则* 取值范围小的数据类型与取值范围大的数据类型进行运算,会先将小的数据类型提升为大的,再运算 基本数据类型分类(4类8种) 1.整数型byte 占一个字节  -128到127short 占两个字  -2^15~2^15-1int 占四个字节 -2^31~2^31-1long 占八个字节 -2^63~2^63-1浮点型float 占四个字节 -3.403E38~3.403E38  单精度double 占八个字节-1.798E308~1.798E308 双精度字符型char 占两个字节 0~65535布尔型boolean   boolean理论上是占八分之一个字节,因为一个开关就可以决定是true和false了,但是java中boolean类型没有明确指定他的大小2.int x = 4;int y = (x++)+(++x)+(x*10);//703.1面试题byte b = 10;//Yb++;//Yb = (byte)(b+1);b+=1; //Yb = b + 1;//N问哪句会报错,为什么 2(同类)short s=1;s = s+1;short s=1;s+=1;3byte b1 = 3;byte b2 = 4;byte b3 = b1 + b2;从两方面去回答这个题b1和b2是两个变量,变量里面存储的值都是变化的,所以在程序运行中JVM是无法判断里面具体的值byte类型的变量在进行运算的时候,会自动类型提升为int类型 byte b4 = 3 + 4;3和4都是常量,java有常量优化机制,就是在编译的的时候直接把3和4的结果赋值给b4了
作业:1:计算出十进制46对应的二进制,八进制,十六进制的值。至于进制的内容今天在练习一次,以后就可以不用练习了。后面能听懂就OK了。不用浪费太多时间。(可用计算器验证你算的是否正确)0d1011102#056   8#2E16#2:什么是变量?变量的定义格式?要使用变量需要注意什么?程序执行过程中其值能在一定范围内变化的量,能用来存放常量;数据类型 变量名 = 变量值局部变量使用前一定要先赋值;同一个区域不能使用相同的变量名3:Java中的数据类型分几类?基本数据类型有哪些?四类整形:byte(一字节) short(2) long(8) int(4)浮点型:double(8) float(4)字符型:char(2)布尔型:boolean(八分之一字节)ps:一字节有8bit;4:数据类型转换:隐式转换:取值范围小的数据类型与取值范围大的数据类型进行运算,会先将小的数据类型提升为大的,再运算 强制转换:面试题:第一题:byte b1=3,b2=4,b;b=b1+b2;//b1 和 b2是变量,变量中存的值是变化的,所以在程序运行中JVM是无法判断里面具体的值b=3+4;//3和4是常量,在byte类型的范围内,不报错哪句是编译失败的呢?为什么呢?第二题:byte  by = 130;有没有问题?有问题如何解决?结果是多少呢?//超过取值范围,换一种数据类型定义第三题:byte b = 10;b++;//b = (byte)(b+1);b = b + 1;//1默认为int类型,b自动转型为int与1做加法,结果是int类型的。把int类型赋给byte类型b哪句是编译失败的呢?为什么呢?5:常见的算术运算符有哪些?//* / + -,--,++  +运算符的作用有哪些?  答:正号,字符串连接符号,算术运算符  除法和取余的区别?//除法的结果是商,取余的结果是余数  ++和--的使用规则?//a++是先执行再++,++a是先++再执行,--同理6:常见的赋值运算符有哪些?// = +=,-=,*=,/=,%=  +=运算的作用是什么?//左边的加上右边的值赋给左边的  扩展的赋值运算符有什么特点?//简化代码7:short s = 1; s = s + 1;有没有问题?如果有怎么解决?//有问题,1默认为int类型,s自动转型为int与1做加法,//结果是int,把int类型赋给short不行; 应该 s = (short)s+1;进行强制类型转换   short s = 1; s += 1;有没有问题?如果有怎么解决?// 没问题8:常见的关系运算符有哪些//==,!=,>,>=,<,<= ?/  关系运算符的结果有什么特点?//结果为boolean类型9:练习打字(每天十分钟,即使休息的时候,也建议练习)