java SE 变量和数据类型

上一节简单的介绍了JAVA的一些基础知识,现在来看看它程序运行的开始

本节的关键字是:变量,标识符,关键字,数据类型

    与其他计算机语言类似,java语言也是从主方法开始的,就是从main方法开始执行的。

    Java中也有变量和常量之分,想要在程序中声明一个存放整数类型的变量可以使用的

程序语句是

    int num;//num是这个变量的名称,int是变量的类型

变量是:利用声明的方式在内存中找到一个空闲的内存块,来保存程序中要用到的信息。

    floata=200.0f;//特殊的声明

        a=3000.0f;

        longb=300L;//特殊的声明

    常量就是一个固定的值,值不能被改变的量。

    变量就是在程序运行中值可以被改变的量。

    final float PI=3.1415f;//Π的值是固定的。

 

标识符(区分大小写)

Java中的标识符可以是任意顺序的大小写字母,或者下划线(_),美元符号($),限制的是不能使用数字作为开头,在命名变量或者某个东西的名字时,也遵循这个规则(java中的关键字不能作为名称出现,java中一共有48+2个关键字)。

    正确的标识符(个人建议用字母开头),类必须得用大写字母开头。

    My,Your_Name123等。

    错误的标识符

    123Y,空格也是非法的。

命名规范:

1,由字母,数字,下划线(_),美元符号($)构成,数字不能开头

2,不能是java中的关键字或保留字

3,大小写敏感;无长度限制;见名知意;驼峰式命名

 

Java中的关键字

这个不用死记硬背,50个,有2个保留的(const 、goto);true、false、null虽然不是关键字,但是属于单独的标识符类型,也不能直接使用,新增加的有(assert、enum)。这里注意一下,主方法中的  main 不是关键字,只是java中的一个特殊的字符。

   

 

声明一个类:

2种方式----public class 和class。    

其中public class是要求类名和文件名相同,class则不要求,但是必须会生成class文件。

    上面说到对变量的声明,变量在使用前,必须进行声明(也就是要确定它的数据类型)。

那么这里就来介绍数据类型:

 

Java中的数据类型有:基本数据类型(也叫原始数据类型)和引用数据类型。

 

引用数据类型中,目前需要知道的就是它有:String(字符串类型)和数组类型,class类型,自定义类型,其他的就再后边做以补充。

整数类型:数据中不带有小数和分数时,可以用它来声明整数变量。其中:

    Byte(8位)—>short(16位)-->int(32位)—>long (64位)的顺序是由小及大的

这里注意一点,用大范围的数据类型可以声明小的数,也就是说,这个顺序是包含的关系,比如,可以用int 声明的整数,就一定可以用long来声明。使用时应注意他们的范围变化,不要出现数据溢出的情况。

    同样的道理,若是int 类型的溢出,就可以使用long来声明,也就是强制类型转换,但是long的换就只能采用变量值的界限检查来确保它运行时不会出错。

      intmax=integer.MAX_VALUE;

这句代码是取出int 类型的最大值 赋给max这个变量的意思,当给max+1,就会出现上面所提到的溢出现象。

 

    字符类型

    相信每个了解计算机的人,都知道,它的工作是采用2进制的,就是所谓的01代码,前辈们采用特殊的算法,将几乎所有的字符都用01代码来表示,我们可以这么认为,字符类型也是整数类型的一种。

比如:  char abc=97;

当采用输出语句时,abc就是a了,因为a的Unicode编码是97,所以在输出字符类型的97时,就是在输出a。

 

浮点数类型和双精度浮点数类型

它的范围是float(+-3.4*10的38次方)  double(1.7*10的308次方)

可以这么说,float是包含在double中的,因为它的精度小于double类型的精度。

这里需要注意,声明float类型时,

     floatnum =3.1f;//这里红色的f是不能省略的,意思是把3.1这个数赋值给num。

    当采用科学计数法时,float num=3.1e12;  意思是3.1*10的12次方这个数赋值给num,这里的e也可以用大写,double类型也是相同的用法,需要注意的是范围,不能把超出范围的数赋值给它们。

 

基本数据类型的默认值

byte、short、int --     0

long            --  0L

float           --0.0f

double          --0.0d

char            --空

Boolean         --false

一般而言,都会给一个变量赋予初始值,当没有初始值的时候,就会采用默认值。

 

数据类型的转换

分为2种:“自动类型转换”和“强制类型转换”。

 

自动类型转换(2个必要条件,同时满足时,才可以自动转换):

1、转换前后的数据类型兼容,例如,整型之间的转换,从short  到int  的转换就是自动的,当然它还满足第二个条件。这里应特别注意,String类型兼容任何类型。

2、从小范围到大范围的转换,主要是没有损失精度,所以可以自动转换。

 

强制类型转换

强制类型转换就可以从这两个必要条件中得到它的条件:所谓强制,就是java不会自动转换,因为会损失数据的精度,也就是说从大范围到小范围的转换就需要强制类型转换了。

例如:

        float a=4.14;

         int b=(int)a;

这里就是把4.14这个float类型的数强制转换成int类型的数,之后在赋值给b,这里的b输出结果是4,显然已经损失了精度。需要注意的是,转换的时候,与等号左边的int是无关的。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你家宝宝

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值