- 包装类(包含了一些功能)
基本数据类型包装成对象
以面向对象的思想来使用这些类型
基本数据类型 包装类
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
boolean Boolean
- 装箱操作:将基本数据类型转换成对应的包装类
-1-
eg:
int a = 10;
Integer num1 = new Integer(a);//Integer 内含toString方法,所以可以直接输出对象
Integer num2 = Integer.valueOf(a);
System.out.println(num1);
System.out.println(num2);
【10】
-2-
输出最大最小值
System.out.println(num.MAX_VALUE);
System.out.println(num.MIN_VALUE);
-3-
System.out.println(num.TYPE);
//可以知道是由什么基本数据类型转变过来的
-4-
转换成二进制
System.out.println(num.toBinaryString(5));
-5-
Integer可以将字符串转换成整型,但双引号里必须是数字
Integer num3 = new Integer("123");
【123】
3.拆箱操作:将包装类转换成对应的基本数据类型
(只有装箱了,才能拆箱)
Integer i = Integer.valueOf(15);
int i1 = i.intValue();
-1-
char
装箱:
Character c = new Character('a');
或者
Character c = Character.valueOf('a');
拆箱:
Character c1 = c.charValue();
System.out.println(c);
System.out.println(c1);
【
a
a
】
-2-
long
装箱:
Long l = new Long(15);
或者
Long l = Long.valueOf(15);
拆箱:
Long l1 = l.longValue();
【
15
15
】
- 自动装箱:可以直接把一个基本数据类型赋值给对应的包装类
自动拆箱:可以直接把一个包装类赋值给对应的基本数据类型
(语法糖)
//自动装箱
Integer i = 5;
System.out.println(i);
//自动拆箱
int i1 = i;
System.out.println(i1);
//自动装箱
Character c = 'j';
//自动拆箱
char c1 = c;
字符串相关转化
//字符串转换成包装类
Integer i = Integer.valueOf("123");
String i1 = i.toString();
//要得知i和i1的类型
System.out.println(i.getClass());
System.out.println(i1.getClass());
【class java.lang.Integer
class java.lang.String】
//包装类转换成字符串
String i2 = i.toString();
//基本数据类型转变成字符串类型
//在其后直接加" ";
int a = 1;
String a1 = a+" ";
String a2 = a+"/5";
//字符串类型转变成基本数据类型
String s = String.valueOf("123");
int s2 = Integer.parseInt(s);
System.out.println(s);
System.out.println(s2);
String s3 = String.valueOf("100");
double s4 = Double.parseDouble(s3);
//字符串类型转变成布尔类型
//(除了true和true任何形式的大小写输出为true,其他打印均为false)
Boolean b = Boolean.valueOf("qq");
System.out.println(b);
【false】
Boolean b2= Boolean.valueOf("true");
System.out.println(b2);
【true】
- 包装类和基本数据类型的区别
- 默认值的不同
int 默认值:0
Integer默认值:null - 包装类中提供了许多直接可以使用的方法
eg:
十进制转换为二进制
System.out.println(Integer.toBinaryString(4));
System.out.println(Integer.toBinaryString(11));
【100
1011】
- 集合框架中不能存放基本数据类型,只能存对象 (包装类)
- 什么时候有包装类,什么时候有基本数据类型
包装类:(存放在堆中)在类中创建对象的字段时
基本数据类型:(存放在栈中)在方法中
- 缓存设计valueOf
//同一个内存地址
Integer i = Integer.valueOf(15);
Integer i2 = Integer.valueOf(15);
System.out.println(i==i2);
【true】
//创建了新的内存地址
Integer i3 = new Integer(15);
Integer i4 = new Integer(15);
System.out.println(i3==i4);
【false】
Integer的范围时-128到127
//超出范围
Integer i5 = Integer.valueOf(128);
Integer i6 = Integer.valueOf(128);
System.out.println(i5==i6);
【false】
Character的范围是0到127
java31的更多相关文章
-
IO(02)--属性集、缓冲流、转换流
属性集[Properties] java.util.Properties类继承于Hashtable,用来表示一个持久的属性集.它使用键值结构存储数据,每个键及其对应的值都是一个字符串. 构造方法 ...
-
数据库1 --- >; 数据库概念、安装、卸载
数据库概念 为什么学习数据库?1.web中的数据量非常大:2. 数据不方便存储和管理 什么是数据库: 用于存储和管理数据的仓库 数据库的特点: 数据可以实现持久化存储,其实数据库就是一个文件系统. ...
-
sql操作数据库(1)-->;DDL、DML、DQL
SQL 操作数据库 概念:结构化查询语言 Structured Quary Language 作用: 1.是一种数据库的查询的标准,对所有的数据库都支持 2.不同的数据库SQL语句可能有点不同 ( ...
随机推荐
-
<;iframe>;标签的一些说明
<iframe>标签里的marginwidth/marginheight属性定义的是框架内部的margin(框架和其父元素之间的margin可以用style="margin:.. ...
-
如何更新Linux源
首先需要自己收藏几个可以得到Linux源的站点,比如:http://mirrors.163.com/ (163的镜像站):可以百度搜索[Linux镜像站]: 下面这些镜像站,转自:http://www ...
- thinkhphp 上传文件或者图片
-
gittalk报错Error
最近通过github和jekyll搭了一个博客,申请使用了gittalk的评论. 但是博客的页面一直报Error:Not found,如下 发现是gittalk中的信息填写错了,name随便写:Hom ...
-
【POJ 3159】Candies&;&;洛谷P3275 [SCOI2011]糖果
来补一下自己很久以前那个很蒟蒻很蒟蒻的自己没有学懂的知识 差分约束,说白了就是利用我们在求最短路的一个\(relax\)操作时的判断的原理 \[dis[v]>dis[u]+disj(u,v)\] ...
-
Linux的vim编辑器中的翻页命令
当我们进入Linux的vim编辑器查看脚本时,按上下键查看是不是非常慢?这个时候就要用到我们的翻页快捷键了,快捷键命令如: 整页翻页命令为:Ctrl + f 键 f 的英文全拼为:forward: ...
-
CentOS7 时间设置与网络同步
1.查看时区 [root@localhost /]# date -R Thu, Jul :: + +0800表示东八区,这边就不用再设置 时区中的CST表示中国标准时间. 时区相关共享文件在/usr/ ...
-
[开源] .NET数据库ORM类库 Insql
介绍 新年之际,给大家介绍个我自己开发的ORM类库Insql.TA是一个轻量级的.NET ORM类库 . 对象映射基于Dapper , Sql配置灵感来自于Mybatis.简单优雅性能是TA的追求. ...
-
Spring Cloud (十五)Stream 入门、主要概念与自定义消息发送与接收
前言 不写随笔的日子仿佛就是什么都没有产出一般--上节说到要学Spring Cloud Bus,这里发现按照官方文档的顺序反而会更好些,因为不必去后边的章节去为当前章节去打基础,所以我们先学习Spri ...
-
#/bin/sh参数-e的含义
注:本博客欢迎转载和引用,但请保留原作者信息! 一.背景 今天遇到一个诡异的问题,一旦脚本中判断$?为非零,那么脚本就会自动退出的情况,仔细调试脚本的逻辑,并没有发现错误,因此作此文 二.解决 既然要 ...