Java数据类型 (含面试题)

Java数据类型 (含面试题)

一、Java标识符?identifiers

  • 标识符就是名字。类名、属性名、方法名、变量名。
  • 标识符的命名规则:
    1.首字符:_、$、字母(大小写都算)
    2.其他的:_、$、字母、数字(0~9)
  • 面试题:一下合法的标识符有哪些?ABCDEJ
    A. Test B.String C.Ture D._ E.$ F.12Test G.Hello World J.学生
  • 补充:符合标识符命名规则,且不是关键字,就可以当名字。
  • 补充:Java标识符的长度最少一个字符,长度不限。
  • 补充:Java语言可以使用汉字当名字,但是不建议这样做。因为:Java语言采用的编码是:Unicode编码,一个
    字符占2个字节,恰好能表示1个汉字。
    一个汉字占2个字节。

二、关键字 keywords

  • 被Java语言本身保留的,有特殊含义
  • 我们不能用它做标识符(名字)
  • Java关键字全是小写
  • 面试题:goto和const是不是关键字?是,但不能使用。(保留字,保留下来,但现在还不能用)
  • true fasle null不在关键字列表里面,他是字面量,但也不能当名字。
  • 面试题:一下哪个是Java语言的关键字?D
    A.For B.System C.String D.false E.NULL F.goto G.const

三、变量

  • Java中变量的分类:成员变量和局部变量
  • 变量:值是可以变得
  • 如何区分成员变量和局部变量?看定义的位置。
  • 成员变量:直接放在类里面,也就是属性。
  • 局部变量:定义在方法内部、形参、游离语句块内。
  • 局部变量没有默认值,使用时必循明确赋值。
  • 当局部变量和属性同名时,局部变量会覆盖属性。

四、数据类型

  • Java中的数据类型分两类
    1. 基本数据类型(简单类型)8 种
    2. 引用数据类型(复合类型)3 种
  • 为什么编程语言会提供多种数据类型?
    各种场景下需求不一样。
  • 基本类型
    1. boolean(布尔型) ,取值:true false;
      在Java中不能使用非0数字和0表示布尔型。
      问题:长度是多少?(一个字节八位,二进制的)
      百度:计算机数制、二进制、八进制、十六进制
      boolean型长度不确定。
      主要用于:条件判断。
    2. byte(字节型)
    • 占内存长度?占一个字节八位。
    • 表示十进制数范围:-123~127
       byte age = 150;//错!
    
    1. short(短整型数)
    • 占内存长度2个字节,16位。
    • 表示的十进制数范围:-32768 ~ 32767
    1. int(整型数)
    • 占内存长度4个字节,32位。
    • 表示的十进制数范围:-2^n-1 ~(2^n-1)-1
    • 整数常量默认类型是int 如:300、23等。
    1. long(长整型)
    • 占内存长度8个字节,64位。
    • 长整型加大写L和小写l都可以,不加也可以。但如果数值超出了int的最大值了,L是必须要加的。
    1. char(字符型)
    • 长度:2个字节,16位。
    • Java使用的编码方式是:Unicode(在这种编码里,一个字符是2个字节,也就是16位)
    • 表示的数的范围是:0 ~ 65535,字符型数全是正的
    • 字符型数的本质是:整型数。A-65 a-97
    1. float(浮点型,小数)
    • 长度4个字节,32位
    • float型数末尾必须加f或F
    1. double(浮点数,小数)
    • 长度:8个字节,64位。
    • 常量小数默认类型:double。 3.14 90.0
    • 所有小数默认是double

五、引用类型(复合类型)

共有三种:分别是:类、数组、接口

六、基本数据类型转换

由低级到高级自动转换,由高级到低级强制转换。
byte – short – int – long – float – double
chart
double x = 98;//98是int型,相比double是低级类型,自动转换
int y = 9.8;//错!
int y = int(9.8);//强制类型转换,会造成精度损失,慎用

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值