JavaSE学习总结:常用类

2023-11-01

1、java.lang.Object

它是所有类的根父类,1、它当中声明的方法,在所有引用类型中都有;2、所有类创建对象,都会调用它的无参构造;3、它的变量可以指向任意类型的对象–多态引用。

1.1常见的方法

1、getClass() 返回某个对象的运行时类型
2、equals(Object obj) 默认,从Object继承的,表示比较两个对象地址,等同于==。
如果这个类的两个对象的比较有“特殊的逻辑”时,需要重写这个方法,可以比较两个属性的值。例如:String,Date,File等。
一旦重写equals,也要重写hashcode方法。要保证:equals返回true的两个对象,它们的hashcode值必须相等。y=f(x),x1=x2,y1=y2。
3、hashcode(),必须和equals一起重写,参与equals比较的属性,一定要参与hashcode值的计算。
因为它是(31)质数,素数,通过它计算的hashcode值可以最大程度的保证不相同。
如果两个对象的hashcode值不相等,这两个对象一定是不相等。
如果两个对象的hashcode值相等,不能决定这两个对象不相等,所以,两个对象hashcode值相等时,还需要调用equals方法继续判断。根据香农信息论可以解释信息丢失问题。

4、toString()
默认,从Object继承的,返回 类名@hashcode的无符号十六进制形式。
如果需要,就重写。

2、包装类

2.1目的

1、在程序中某些位置,例如(集合,泛型)等不能使用基本数据类型,因此需要把基本数据类型转换成对象类型。
2、但是基本数据类型,又节省空间又计算速度快,所以保留基本数据类型。

2.2包装类

byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
boolean Boolean

2.3装箱

手动
int a = 12;
Integer i = new Integer(a);
自动
Integer i = 12;

2.3拆箱

手动
int a = new Integer(12).intValue();
自动
int a = new Integer(12);

2.4包装类的其他的应用

1.基本数据类型与字符串之间的转换,基本数据类型–>String +""
String–>基本数据类型。例如:int age = Integer.parseInt(“23”);例如:Integer age = Integer.valueOf(“23”);例如:Integer age = new Integer(“23”);
2、获取数据范围 例如:Integer.MAX_VALUE
3、Character可以转某个字符的大小写
Character.toLowerCase(char)
Character.toUpcase(char)

3、Scanner类

1、导包 import java.util.Scanner;
2、创建Scanner类的变量 Scanner input = new Scanner(System.in);
3、使用Scanner中的方法 :
字符串 String name = input.next();
整型 int age=input.nextInt();
浮点型 double score = input.nextDouble();
字符型 char sex = input.next().charAt(0);

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JavaSE学习总结:常用类 的相关文章

随机推荐

  • JavaWeb_LeadNews_Day11-KafkaStream实现实时计算文章分数

    JavaWeb LeadNews Day11 KafkaStream实现实时计算文章分数 KafkaStream 概述 案例 统计单词个数 SpringBoot集成 实时计算文章分值 来源 Gitee KafkaStream 概述 Kafk
  • 使用URL传递参数

    现在比较流行RESTful风格 而通过URL进行参数的传递这就符合RESTful风格 什么是RESTful风格呢 对应的中文是rest式的 Restful web service是一种常见的rest的应用 是遵守了rest风格的web服务
  • qt定时器的多种使用方式

    qt定时器的多种使用方式 1 基础版实现 2 便捷版实现 基于Lambda函数 3 一次性版实现 4 重写定时器事件版实现 QObject内部定时器 1 基础版实现 1 头文件类中定义Timer mTime 指针变量或直接定义QTimer
  • VMware虚拟机的三种网络连接模式的特点

    在VMware Workstation中创建虚拟机后 配置虚拟机的网络连接有3种模式 分别是 1 桥接模式 VMnet0 2 NAT模式 VMnet8 3 仅主机模式 VMnet1 这三种网络连接模式有什么用途及其区别是什么 以下简单介绍
  • 等保案例 6

    用户简介 江苏省监狱管理局是江苏省司法厅管理下的副厅级部门管理机构 是主管全省监狱工作的机关 随着信息化的发展 江苏省监狱管理局的监狱业务对网络和信息系统的依赖不断增加 网络流转的信息量不断增大 信息化建设的需求也日益凸现 因此江苏省监狱管
  • android audio arch

    android audio arch ALSA System on Chip ASoC ASoC 驱动将一个audio子系统分成四个部分 Machine driver Platform driver CPU driver以及Codec dr
  • 竖式问题

    找出所有形如abc de 三位数乘以两位数 的算式 使得在完整的竖式中 所有数字都属于一个特定的数字集合 输入数字集合 相邻数字之间没有空格 输出所有竖式 每个竖式前应有编号 之后应有一个空行 最后输出解的总数 具体格式见样例输出 为了便于
  • jQuery easyUI的datagrid在翻页之后记录被选中的行

    最近修改一个以前的项目 前端有一个地方是用到 jQuery 的 datagrid 框架 需求是实现 datagrid 在翻页之后记录被选中的行 返回之前的页时选中项还在 所以就记录了一下实现过程 大概思路如下 1 设置 idField pk
  • 如何安装win10和linux双系统。以及引导系统问题。

    1 安装环境介绍 首先 出于本人学习需要 要用到linux系统 但是经常又会用到win10 因此迫切需要双系统的电脑 所在本人就琢磨着怎么在不删除原来win10的情况下可以装一个linux的ubuntu系统 2 常见的安装步骤 2 1首先在
  • MySQL的基本语句(1)—增删改查

    前言 MySQL由于其体积小 速度快 总体拥有成本低 尤其是开放源码这一特点 一般中小型和大型网站的开发都选择 MySQL 作为网站数据库 所以我准备在此处记录一下比较常用的几种语句 每一种语句只介绍一条如何操作 之后我会全面的写一个 建表
  • 杂项系列:代码分析工具Understand中文乱码

    参考 https blog csdn net ll480 article details 89575357 总结 project gt configure project gt file options gt File encode gt
  • QT学习之signals

    QT中增加了signals和slots 即信号与槽 从字面上来看我们也能大概知道这两个概念的意义 信号与槽的作用便是在两者关联后通过发射信号触发槽的反应 可以一个信号对应一个槽 可以一个信号对应多个槽 也可以多个信号对应一个槽 虽然相对来说
  • wait和sleep的区别

    sleep 是线程类 Thread 的静态类方法 导致此线程暂停执行指定时间 给执行机会给其他线程 但是监控状态依然保持 到时后会自动恢复 调用sleep 不会释放对象锁 sleep 谁调用的谁去睡觉 即使在a线程里调用了b的sleep方法
  • Windows域内密码凭证获取 (゚益゚メ) 渗透测试

    文章目录 域凭证介绍 获取域内专属凭证 ntds dit 卷影复制服务 Volume Shadow Copy Service VSS 使用 ntdsutil 使用 vssadmin 使用 vshadow 快照挂载 NinjaCopy脚本 凭
  • 在uniapp中配置和使用原生小程序组件的方法

    在uniapp中配置和使用原生小程序组件的方法 一 在项目中创建wxcomponents文件夹 将原生组件或自定义组件放入文件夹中 如下图 二 在 pages json 对应页面的 style gt usingComponents 引入组件
  • XML详解

    1 什么是xml eXtensible markup language 可扩展标记语言 被设计用来传输 存储数据 纯文本 自行定义标签 自我描述 HTML旨在显示数据 注 声明不属于XML本身的组成部分 XML元素的格式如下 lt 标记名称
  • IDEA设置新建XML文件

    1 原始菜单新建无法创建XML文件 2 file setting gt Editor gt File and Code Templates复制XML格式 3 点击 新建模板 gt 将刚才复制的模板粘贴到新建的内容 gt 更改xml名称为XM
  • Redis的发布与订阅

    什么是发布和订阅 一般来说 发布与订阅 又称pub sub 的特点是订阅者 listener 负责订阅频道 channel 发布者 publisher 负责向频道发送二进制字符串消息 binary string message 每当有消息被
  • Express 源码分析及简易封装

    原文出自 https www pandashen com 前言 Express 是 NodeJS 的 Web 框架 与 Koa 的轻量相比 功能要更多一些 依然是当前使用最广泛的 NodeJS 框架 本篇参考 Express 的核心逻辑来实
  • JavaSE学习总结:常用类

    Java常用类 1 java lang Object 1 1常见的方法 2 包装类 2 1目的 2 2包装类 2 3装箱 2 3拆箱 2 4包装类的其他的应用 3 Scanner类 1 java lang Object 它是所有类的根父类