java学习韩顺平p35-60

本文详细介绍了Java文件的运行过程,包括编译和JVM运行,以及相对路径的概念。重点讲解了Java的数据类型(如整数、浮点、字符和布尔),类型间的转化规则,自动和强制类型转化的细节,以及如何将数据转换为字符串。
摘要由CSDN通过智能技术生成

java文件的运行逻辑:

hello.java --编译--》hello.class --运行--》jvm

相对路径:从当前目录生产的一个路径绝对。 ..\ (表示当前目录的上一级文件)

API文档:在线API手册 - 码工具 (matools.com)

数据类型与转化:

整数型[byte 1个字节][short 2个字节][int 4个字节][long 8个字节]

int i=1L;这样是错的,因为编译器会先因为int占用4个字节,结果结尾加L,表示为long,是更大的存储类型,所以冲突了。

1byte=8bit

浮点型[float 4个字节][double 8个字节]

浮点数=符号位+指数位+尾数位(尾数部分可能丢失)

java中浮点类型默认是double。

float num=1.1F;(F为转化到float类型,如果不转化就是错的)

double num=11.1f(大容器装小的,也是对的)

通常使用double类型

double num=8.1/3 输出时是一个接近2.7的小数如2.66666666669

所以对整除运算后的比较尽量不要用相等去判断,正确写法if(Math.abs(a1/3-a2)<0.0001)

字符型[char 2个字节]

字符只能单引号,字符串用双引号。

布尔型[1个字节]

boolean i=true;java中不可以用0或非0的整数代替false和true。这和c语言不同。

数据类型的转化

自动类型转化

两条自动转化的路线

1.多种数据类型一起算,我直接转化到最大的类型 float d1=n1 +1.1;//错误,因为右边1.1默认是double类型了,比较大,右边全转成了double,自然不可赋值给float。

2.byte,short不可和char自动相互转化

3.byte,short,char可以计算,会先全部转为int然后再算。

4.boolean 是不参与转化的

强制类型转化

细节1:

int n1=(int)1.9;//输出为1,精度下降

细节2:

int x= (int)10*3.5;//报错,因为只就近转化了10,但是没有转化3.5实际为double数据类型,应该全加上小括号

细节3:

int  m=100;char c=m;//报错不可以直接保存int型的变量

char c1=(char) m;//正确,输出为100对应的unicode码值

细节4:

byte和short,char类型正在进行运算时,当做int类型处理

数据类型转字符串只需要+“”

反之,需要特别的转化格式

主要就是integer有点不一样,其他的还是比较好记的。

S5.charAt(0)//取s5字符串中的第一个字符,字符和字符串不可以转

  • 7
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值