Java小白的第十四课一一Lang包&枚举&包装类


12课和13课的内容放到一起了

1.Lang包

1.1 定义: java.lang包是Java内置的一个基础包,其中包含了一系列程序中经常要的类; 在默认情况下,每个Java程序都会自动导入该包,因此无需在程序中显式地声明引入。

2.枚举

2.1 概述:

枚举类型可以取代以往的常量的定义方式,即常量封装在类或者接口中,此外枚举提供了安全检查功能。枚举本质上还是以类的形式存在枚举类型增强了程序代码的健壮性
例如: 属性值固定枚举,如,季节、节气、性别等。

2.2 语法:

  • 关键字:enum;
  • 定义语法: public enum 类名{ 成员值1,成员值2,… ,成员值 N}

2.3 实现:

将枚举作为变量的数据类型,那么这个变量的值就必须是枚举类中的常量值。
定义枚举类
创建枚举变量
测试类

2.4 枚举的好处:

类型安全,易于输入,代码清晰


包装类

3.1 概念

Java有两大数据类型 : 基本数据类型和引用数据类型。基本数据类在某一些场合使用不了,比如集合(集合只能放引用数据类型)。
Java提供一系列包装类,将原始数据变成引用数据类型。

原始数据类型包装类
boolean(布尔值)Boolean
byte(字节型)Byte
char(字符型)Character
short(短整型)Short
int(整数型)Integer
long(长整型)Long
float(浮点型)Float
double(双精度浮点型)Double

为什么要提供包装类

  1. 和面向对象的思想一致,因为普通类型没有方法属性。
  2. 和其它类型进行转换,没有包装类比较麻烦

3.2 包装类的自动拆装箱

JDK1.5后以后提供了自动拆装箱的操作

  • 自动装箱: 自动将基本数据转成引用数据
  • 自动拆箱: 自动将包装类转成基本数据类
int a = 5;
//自动装箱 将简单数据赋值给了包装类
Integer i = a;
//自动拆箱 将包装类转成简单数据类
int num = i;
// JDK1.5之后才有自动拆装箱

3.3 包装类的常用方法

  • 字符串和简单类(包装类)之间如何转换
    personInt
    personInt
    Valueof
    valueof
    用法
  • 自动拆装箱原理
public static  void main(String[]args){
    Integer integer=Integer.valueOf(1); 
    int i=integer.intValue(); 
}

3.4Character是常用方法

  • isDigit 判断是否是数字 返回boolean
    isDigit

  • isLetter 判断是否是字母 返回boolean
    isLetter

  • isUpperCase 判断是否是大写字母 返回Boolean
    在这里插入图片描述

  • isLowerCase 判断是否是小写字母 返回Boolean
    isLowerCase
    使用
    注意:
    包装类并不是取代基本类型

3.5 常量池

包装类常量池的值范围: -128到127

  • java 中基本类型心包装类的大部分都实现了常量池技术,这些类是Byte,Short,Integer,Long,Character,Boolean
  • 另外两种浮点数的包装类则没有实现
  • 当这些有常量池的包装类对应的值在-128到127的范围内,用==判断的时候是相等,因为指向一个地址。

常量

面试题

  • Integer和 Int区别
    • Integer 是int的包装类,int是基类型;
    • Integer 必须实例化后才能用int不用;
    • Integer 是对象的引用,new一个Integer时,实际上引用指像的是对象,int是直接存数值;
    • Integer默认是null,int默认是0;
  • 解释自动拆装箱
    • 自动拆装箱在JDK1.5后时被引入,自动装箱就是把 int转成Integer ,反之就是拆箱。
    • 装箱过程是通过调用包装器的valueOf方法实现的,而拆箱就是调用xxxValue方法;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值