Java基础系列--包装类
原创作品,可以转载,但是请标注出处地址http://www.cnblogs.com/V1haoge/p/5462489.html
1、8种基本数据类型都有各自的包装类,其对应关系为:
基本————————————包装类
byte————————————Byte
short———————————Short
char————————————Char
int————————————Integer
long————————————Long
float————————————Float
double———————————Double
boolean——————————Boolean
2、自动装拆箱与手动装拆箱
1)自动拆装箱:
(1)自动装箱:Integer in = 123;
(2)自动拆箱:int t = in;
2)手动拆装箱:
(1)手动装箱:Integer in1 = new Integer(123);
(2)手动拆箱:int t1 = in1.intValue();
3)Integer in1 = new Integer(123);与Integer in = 123;的区别:
(1)前者不会触发自动装箱,后者会触发自动装箱;
(2)一般情况下,在执行效率和资源占用上后者要优于第一种,但不是绝对。
3、将基本数据类型的数据包装成为包装类后,就可以利用包装类的各种方法,这里面最常用的就是对数据类型的转换,而其中最常用的还是整型与字符串型之间的转换:
1)整型转换成为字符串型:假如定义:int i = 123;
(1)String s1 = i + ""; //第一种方法
(2)String s2 = Integer.toString(i); //第二种方法
(3)String s3 = String.valueOf(i); //第三种方法
2)字符串型转换成为整型:假如定义:String s = "456";
(1)int i1 = Integer.valueOf(s); //第一种方法
(2)int i2 = Integer.parseInt(s); //第二种方法
3、Integer类型的方法:toString()、toString(int i)、valueOf(int i)、valueOf(String str)
(1)toString()方法:返回一个表示该Integer值得String对象,这是一个非静态方法,需要用对象名引用。
(2)toString(int i)方法:返回一个表示指定整数(i)的String对象,这是一个静态方法,使用类名Integer点用。
(3)valueOf(int i)方法:返回一个表示指定int值的Integer对象,这是一个静态方法,使用类名Integer点用。
(4)valueOf(String str)方法:返回一个表示指定String的值的Integer对象,此为静态方法,使用类名Integer点用。
下面是测试代码:
package lianxi; /**
* @author V1haoge
*/
public class Test183 { public static void main(String[] args) { int a = 1;
String str = "123";
Integer b = a; //自动装箱
int c = b;//自动拆箱
Integer d = new Integer(a); //手动装箱
int e = d.intValue();//手动拆箱 /*
* 实验int类型与String类型之间的互转
*/
//int转换String
int i = 123;
//转换开始
String s1 = i+"";//第一种方法
String s2 = String.valueOf(i);//第二种方法
String s3 = Integer.toString(i);//第三种方法
//下面用于输出转换结果
System.out.println(s1);
System.out.println(s2);
System.out.println(s3);
//String转换int
String s = "456";
//开始转换
int i1 = Integer.valueOf(s);//第一种方法
int i2 = Integer.parseInt(s);//第二种方法
//下面输出转换结果
System.out.println(i1);
System.out.println(i2); } }
显示结果为:
123
123
123
456
456
Java基础系列--包装类的更多相关文章
- 夯实Java基础系列1:Java面向对象三大特性(基础篇)
本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 [https://github.com/h2pl/Java-Tutorial](https: ...
- 2015年12月28日 Java基础系列(六)流
2015年12月28日 Java基础系列(六)流2015年12月28日 Java基础系列(六)流2015年12月28日 Java基础系列(六)流
- Java基础系列--static关键字
原创作品,可以转载,但是请标注出处地址:http://www.cnblogs.com/V1haoge/p/8477914.html 一.概述 static关键字是Java诸多关键字中较常使用的一个,从 ...
- Java基础系列-ArrayList
原创文章,转载请标注出处:<Java基础系列-ArrayList> 一.概述 ArrayList底层使用的是数组.是List的可变数组实现,这里的可变是针对List而言,而不是底层数组. ...
- Java基础系列-Collector和Collectors
原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/10748925.html 一.概述 Collector是专门用来作为Stream的coll ...
- Java基础系列-二进制操作
原创文章,转载请标注出处:<Java基础系列-二进制操作> 概述 Java源码中涉及到大量的二进制操作,非常的复杂,但非常的快速. Java二进制表示法 首先了解下二进制,二进制是相对十进 ...
- Java基础系列-equals方法和hashCode方法
原创文章,转载请标注出处:<Java基础系列-equals方法和hashCode方法> 概述 equals方法和hashCode方法都是有Object类定义的. publi ...
- Java基础系列-Comparable和Comparator
原创文章,转载请标注出处:<Java基础系列-Comparable和Comparator> 一.概述 Java中的排序是由Comparable和Comparator这两个接 ...
- Java基础系列--HashMap(JDK1.8)
原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/10022092.html Java基础系列-HashMap 1.8 概述 HashMap是 ...
随机推荐
- Greenplum 日常维护手册 (汇总、点评、备查)
1. 数据库启动:gpstart常用可参数: -a : 直接启动,不提示终端用户输入确认-m:只启动master 实例,主要在故障处理时使用2. 数据库停止:gpstop:常用可参数:-a:直接停止, ...
- lwip协议栈移植(1)
lwip移植分为两类: 1,只移植内核核心,用户应用程序编写只能基于raw/callback api进行 2,移植内核核心和上层API函数模块,用户可以使用所有三种API编程,即 raw/callba ...
- 基于面向方面和UML的实时系统建模研究
一.基本信息 标题:基于面向方面和UML的实时系统建模研究 时间:2010 出版源:计算机技术与发展 领域分类:面向方向:实时系统:横切关注点:统一建模语言: 二.研究背景 问题定义:实时系统建模研究 ...
- Windows与系统信息相关的DOS命令
首先,以管理员身份打开CMD命令框, 输入 start msinfo32:回车之后,出现一个弹窗,上面有大部分的系统信息:系统版本,电脑名称,BIOS,CPU,内存等: wmic bios:显示BIO ...
- Windows平台最方便最易用的法语输入法
原文:http://wenwen.sogou.com/z/q1700007921.htm 对于XP,在“控制面板”中选择“输入法区域设置”,单击“更改”,出现一个“设置”框:选择“添加”,然后选择“法 ...
- maven项目打包成war包发布到tomcat下...
分为两种情况: 1.当你的项目中没有前端页面时,直接右键项目--Export--选择web下的warFile--选择目录到tomcat安装目录下的webapps下即可访问. 2.当项目中有前端页面时 ...
- C++与java中的赋值操作符
#include <iostream> using namespace std; class BankAccount{ private: double balance; public: B ...
- 机器学习常用sklearn库
Sklearn.model_selection(模型选择) Cross_val_score:交叉验证 Train_test_split:数据切割 GridsearchCV:网格搜索 Sklearn.m ...
- 让DIV随滚动条滚动
$(window).scroll(function(event){ //JQ监听滚动条 $('DIV').css("top", $(window).scrollTop ...
- 【福州活动】| "福州首届.NET开源社区线下技术交流会"(2018.11.10)
活动介绍 微软爱开源,已是尽人皆知的事实.自从收购全球最大的开源社区 GitHub 之后,微软依旧使 GitHub 保持独立运营,并且通过此项举措,微软本身已经成为最大的社区服务者. .NET Cor ...