Java语言学习总结 扩展篇 包装类的概念及其使用

包装类

包装类的概述

Java提供了两个类型系统,基本类型与引用类型,使用基本类型在于效率,然而很多情况,会创建对象使用,因为
对象可以做更多的功能,如果想要我们的基本类型像对象一样操作,就可以使用基本类型对应的包装类,如下:

包装类:
基本数据类型,使用起来非常方便,但是没有对应的方法来操作这些基本类型的数据
可以使用一个类把基本类型的数据装起来,在类中定义一些方法,这 个类叫做包装类
我们可以使用类中的方法来操作这些基本类型的数据

装箱和拆箱

基本类型与对应的包装类对象之间,来回转换的过程称为”装箱“与”拆箱" :
●装箱: 从基本类型转换为对应的包装类对象。
●拆箱: 从包装类对象转换为对应的基本类型。
用Integer与int为例: ( 看懂代码即可)

装箱:

把基本类型的数据,包装到包装类中(基本类型的数据- >包装类)
构造方法:
  Integer(int volue) 构造一一个新分配的Integer 对象,它表示指定的int 值。
  Integer(String s)构造一-个新分配的Integer 对象,它表示String 参数所指示的int值。
  传递的字符串,必须是基本类型的字符串,否则会抛出异常“100” 正确"a” 抛异常
静态方法:
  static Integer value0f(int i) 返回一个表示指定的int 值的Integer 实例

  static Integer value0f(String S)返回保存指定的String 的值的Integer 对象。


拆箱:在包装类中取出基本类型的数据(包装类- >基本类型的数据)
成员方法:
int intValue() 以int类型返回该Integer 的值。

示例代码:

 1         //装箱 :把基本类型的数据,包装到包装类中(基本类型的数据->包装类)
 2         //构造方法
 3         Integer in1 = new Integer(1);//方法上有横线,说明方法过时了
 4         System.out.println(in1);//1重写了tostring方法
 5         Integer in2 = new Integer("1");
 6         System.out.println(in2);//1
 7         //静态方法
 8         Integer in3 = Integer.valueOf(1);
 9         System.out.println(in3);
10         //Integer in4 - Integer. value0f( "a ");//NumberFormatException数字格式化异常
11         Integer in4 = Integer.valueOf("1" );
12         System.out.println(in4); 
1         //拆箱: 在包装类中取出基本数据类型的数据(包装类->基本类型的数据)
2         int i = in1.intValue();
3         System.out.println(i);

自动装箱与自动拆箱:

自动装箱与自动拆箱:基本类型的数据和包装类之间可以自动的相互转换
JDK1.5之后出现的新特性

 1         /*
 2         自动装箱:直接把int类型的整数赋值包装类
 3         Integer in = 1;就相当于Integer in = new Integer(1);
 4         */
 5         Integer in = 1;
 6         /*
 7         自动拆箱: in是包装类,无法直接参与运算,可以自动转换为基本数据类型,在进行计算
 8         in+2;就相当于in. intVale() + 2 = 3
 9         in=in.intVale() + 2 = 3又是一个自动装箱
10         */
11         in=in+2;
12         ArrayList<Integer> list = new ArrayList<>();
13         /*
14             ArrayList集合无法直接存储整数,可以存储Integer包装类
15         */
16         list.add(1); //-->自动装箱] list.add(new Integer(1)); !
17         int a = list.get(0); //-->自动拆箱list. get(0). intValue();

原文地址:https://www.cnblogs.com/acebb/p/12238038.html

时间: 2024-11-05 20:42:23

Java语言学习总结 扩展篇 包装类的概念及其使用的相关文章

java语言学习笔记1

最近也在春节的节假日里,总是会有各种各样的事情出现,没有很完整的时间来学习java以及其他方面的知识. 从昨天开始有了完整的学习体系,我去娄老师推荐的极客学院网站开始学习java语言的语法.在假期之初在极客学院的注册工只是当成任务来完成的,但是并没有发现极客学院的真正作用和很大的价值,借用娄老师博客上的一句话就是,“通过网络的学习,不仅是老师与学生之间的交流,更是社会.老师和学生三方面的交流,使得学生的知识来源会更丰富更广,知识方面会有质的提高“,就对于这个极客学院,我看了相关的c语言视频,还解

java语言学习

现在最流行的编程语言就是java了,学习java要怎样学习,有要注意哪些呢?首先要确定学习将来要干嘛,确定好之后就一直朝着这个方向努力,不放弃就行了. 首先,需要明确的是Java已经不是一门简单的语言,也不是一门可以速成的语言了,而是一门功能强大,体系复杂的语言,需要花很大精力才能掌握并精通的语言.其次,Java即使在Web开发领域,也不等于仅SSH(Struts+Spring+Hibernate),这三种框架的流行,使多数程序员浮于开发的表面,不能深入进去,同时是Java在Web开发领域被PH

零基础学Android开发之Java语言学习01-什么是java

一.什么是Java? Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言和Java平台的总称.由James Gosling和同事们共同研发,并在1995年正式推出. Java分为三个体系: JavaSE(J2SE)(Java2 Platform Standard Edition,java平台标准版) JavaEE(J2EE)(Java 2 Platform,Enterprise Edition,java平台企业版) JavaME(J2ME)(Jav

java web学习笔记-jsp篇

转载自:http://www.cnblogs.com/happyfans/archive/2015/03/17/4343571.html 1.java web简介 1.1静态页面与动态页面   表现形式 所需技术 静态网页 网页内容固定,不会更新 html,css 动态网页 网页内容由程序动态显示,自动更新 html,css,DB,java/c#/php,javascript,xml,主流的动态网页脚本(jsp,asp.net,php) 1.2搭建java web开发环境 jdk1.7+tomc

java 语言学习大纲

看来java的很多书,感觉目前来说对于大纲来说没有什么好书,还是自己总结一套吧. Java 语言基础: 八种基本数据类型,int(4), float(4), double(8), boolean(1), long(8), shortint (2),byte(1),char(2) String重要的数据类型 集合 collection, map: 重要的JAR  java.util.concurrent, java.io, java.http 继承,接口 反射 消息机制(待定) 队列,多线程,线程

零基础学Android开发之Java语言学习02-JAVA开发平台搭建

window系统安装java 下载JDK 首先我们需要下载java开发工具包JDK,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html,点击如下下载按钮: 在下载页面中你需要选择接受许可,并根据自己的系统选择对应的版本(每个人的操作系统是不一样的),本文以 Window 64位系统为例: 下载后JDK的安装根据提示进行,还有安装JDK的时候也会安装JRE,一并安装就可以了. 安装JDK,安装过程中可以自定

零基础学Android开发之Java语言学习02-基本语法

第一个Java程序 下面看一个简单的Java程序,它将打印字符串 Hello World //com.henancaiyun 包,主要用来解决同名问题.每一个类都要指定在一个包下面.package com.henancaiyun; //导入ClassAimport com.henancaiyun.ClassA; //HelloWord类public class HelloWord {  //Main静态函数 public static void main(String[] args ) {  /

Java 语言 学习 路线图

Trail: Learning the Java Language This trail covers the fundamentals of programming in the Java programming language. Object-Oriented Programming Concepts teaches you the core concepts behind object-oriented programming: objects, messages, classes, a

Java语言学习(5)-Java中基础封装类(日期、时间类)

日期和时间封装类 1. Data类 Java日期和时间采用Data类.Data类在java.util包中. Data类构造函数: 1)       Data()   采用当前时间初始化对象: 2)       Data(long millisec)   采用1970年1月1日起时间毫秒数来初始化对象. Data类的方法: 1)       boolean after(Data d).boolean before(Data d) Data对象和参数指定日期较早晚,返回boolean值. 2)