常用类

主要分为几部分需要学习:

  • 包装类的介绍和使用
  • 字符串的介绍和使用
  • 时间类的介绍和使用
  • 其他类型介绍和使用

包装类(Wrapper Class)基本知识:

1、基本数据类型不是对象,但有时需要将基本类型转化为对象,为此提供了八种包装类合计本数据类型相对应<br/> 2、基本类型对应包装类

| 基本数据类型 | 包装类 | | :------| ------: | | byte | Byte| | boolean | Boolean | | short | Short | | char | Character | | int | Integer | | long | Long | | float | Float | | double | Double |

3、用法类似跟基本数据类型<br/> 4、包装类提供了基本数据类型,包装类,字符串之间的转化<br/> 5、重点从Integer开始

一、Integer代码关系介绍

1、结构:

2、描述

可以看到Number几乎包含了所有需要的方法,而Number本身是一个abstract的类,所以继承它的类需要实现它所有的方法,而方法就是将基础类型的数据转化为对象

3、基本数据类型转化成包装类对象

(1)通过对象构造器,转化成包装对象

1 Integer basicIntTypeConvertWraps = new Integer(3);

(2)使用包装对象的静态方法,valueOf()(官方推荐这个方法)

4、把包装类转成基本数据类型

(1)自动方式

1 Integer basicIntTypeConvertWraps = new Integer(3); int automaticTransformationIntType = basicIntTypeConvertWraps;

(2)手动方式

1 Integer basicIntTypeConvertWraps = new Integer(3); int automaticTransformationIntType = basicIntTypeConvertWraps.intValue();

5、把字符串转成包装类对象

(1)自动转化

1 Integer basicIntTypeConvertWraps = new Integer("3");

源码

1 public Integer(String s) throws NumberFormatException {
2 // 构造方法,按照十进制转化
3 this.value = parseInt(s, 10);
4 }

注意:

1、如果字符串转化成包装类对象的值不是合法的类型,就会报错

1 Integer basicIntTypeConvertWraps = new Integer("3ddd");

(2)手动转化(可以添加进制,默认是十进制)

1 Integer automaticTransformationIntegerType = basicIntTypeConvertWraps.parseInt("44");

6、把包装类对象转化成字符串

(1) 直接转化

1 Integer automaticTransformationIntegerType = basicIntTypeConvertWraps.parseInt("44");
2 String transformationStringrType = automaticTransformationIntegerType.toString();

(2)字符拼接

1 Integer automaticTransformationIntegerType = basicIntTypeConvertWraps.parseInt("44");
2 String transformationStringrType = " "+automaticTransformationIntegerType;

7、常见的常量类型(Integer将常量类型都放在类中)

1 System.out.println("整数最大值:"+Integer.MAX_VALUE);

总结:

 * 包装类提供了基本数据类型\包装数据类型\字符串之间的互相转化

JDK源码阅读-------自学笔记(九)(常用类型Integer初探)的更多相关文章

  1. JDK源码阅读-------自学笔记(一)(java.lang.Object重写toString源码)

    一.前景提要 Object类中定义有public String toString()方法,其返回值是 String 类型. 二.默认返回组成 类名+@+16进制的hashcode,当使用打印方法打印的 ...

  2. JDK源码阅读-------自学笔记(五)(浅析数组)

    一.数组基础 1.定义和特点 数组也可以看做是对象,数组变量属于引用类型,数组中每个元素相当于该队形的成员变量,数组对象存储在堆中. 2.初始化数组 常用类初始化 // 整型初始化 int[] int ...

  3. JDK源码阅读-------自学笔记(二十五)(java.util.Vector 自定义讲解)

    Vector 向量 Vector简述 1).Vector底层是用数组实现的List 2).虽然线程安全,但是效率低,所以并不是安全就是好的 3).底层大量方法添加synchronized同步标记,sy ...

  4. JDK源码阅读-------自学笔记(二十四)(java.util.LinkedList 再探 自定义讲解)

    一.实现get方法 1.一般思维实现思路 1).将对象的值放入一个中间变量中. 2).遍历索引值,将中间量的下一个元素赋值给中间量. 3).返回中间量中的元素值. 4).示意图 get(2),传入角标 ...

  5. JDK源码阅读(三):ArraryList源码解析

    今天来看一下ArrayList的源码 目录 介绍 继承结构 属性 构造方法 add方法 remove方法 修改方法 获取元素 size()方法 isEmpty方法 clear方法 循环数组 1.介绍 ...

  6. JDK源码阅读(一):Object源码分析

    最近经过某大佬的建议准备阅读一下JDK的源码来提升一下自己 所以开始写JDK源码分析的文章 阅读JDK版本为1.8 目录 Object结构图 构造器 equals 方法 getClass 方法 has ...

  7. 利用IDEA搭建JDK源码阅读环境

    利用IDEA搭建JDK源码阅读环境 首先新建一个java基础项目 基础目录 source 源码 test 测试源码和入口 准备JDK源码 下图框起来的路径就是jdk的储存位置 打开jdk目录,找到sr ...

  8. JDK源码阅读-ByteBuffer

    本文转载自JDK源码阅读-ByteBuffer 导语 Buffer是Java NIO中对于缓冲区的封装.在Java BIO中,所有的读写API,都是直接使用byte数组作为缓冲区的,简单直接.但是在J ...

  9. JDK源码阅读-FileDescriptor

    本文转载自JDK源码阅读-FileDescriptor 导语 操作系统使用文件描述符来指代一个打开的文件,对文件的读写操作,都需要文件描述符作为参数.Java虽然在设计上使用了抽象程度更高的流来作为文 ...

  10. JDK源码阅读-FileOutputStream

    本文转载自JDK源码阅读-FileOutputStream 导语 FileOutputStream用户打开文件并获取输出流. 打开文件 public FileOutputStream(File fil ...

随机推荐

  1. #线性dp#CF1110D Jongmah

    题目 分析 考虑三个 \((i,i+1,i+2)\) 可以用 \((i,i,i)\) 和 \((i+1,i+1,i+1)\) 和 \((i+2,i+2,i+2)\) 代替, 所以这样的三元组本质上最多 ...

  2. 「Cnoi2020」Cirno's Easy Round

    目录 前言 A 光图 分析 代码 B 向量 分析 C 高维 分析 D 四角链 分析 代码 E 领域极限 分析 代码 F 明天后的幻想乡 题目 前言 200分果断自闭,F是原题,所以就用原题算了 A,B ...

  3. 小师妹学JavaIO之:try with和它的底层原理

    目录 简介 IO关闭的问题 使用try with resource try with resource的原理 自定义resource 总结 简介 小师妹是个java初学者,最近正在学习使用java I ...

  4. OpenHarmony社区运营报告(2023年3月)

      本月快讯 • <OpenHarmony 2022年度运营报告>于3月正式发布,2022年OpenAtom OpenHarmony(以下简称"OpenHarmony" ...

  5. 国产Linux发行版 Deepin 评价与主观展望 我与Deepin的故事

    全文皆属于up自己的主观臆断,有不到之处可以进行批评,共同成长. P1 编辑时间(2021-2-20) 昨天,我刷b站的时候见到一则旧闻,关于我国操作系统的.原本只是想写个1000字左右的评论的,没想 ...

  6. Qt Create开发,修改 .Pro 文件改变 exe 的名称

    // .pro // 修改 TARGET 就可以改变生成的exe的名称 TARGET = Test // 要是生成的exe名称中需要带有空格,需要用到$$quote TARGET = $$quote( ...

  7. Rome反序列化链分析

    环境搭建 <dependencies> <dependency> <groupId>junit</groupId> <artifactId> ...

  8. k8s之Pod

    什么是Pod 通俗的来讲就是以pause为基础容器,其它容器共享pause容器的网络名称空间.主机名以及进程间通信,组成的一个逻辑的容器集合. • Kubernetes Pod是Kubernetes的 ...

  9. 面试连环炮系列(二十️四):为什么选择RocketMQ

    为什么选择RocketMQ,而不是其他MQ 性能:阿里支撑,经受住淘宝,天猫双11重重考验:性能高:可靠性好:可用性高:易扩展. 功能:功能完善,我们需要的功能基本都够满足,如:事务消息,消息重试,死 ...

  10. c# 深克隆与浅克隆

    前言 我们都知道memberwiseclone 会将浅克隆. 什么是浅克隆?如何深克隆呢? 正文 public class good{ private good(){ oneclass=new cla ...