1、Object类

“万物皆对象”:(1)从类和对象角度:任何具体事物都是一个对象,。

(2)Object类,类似“东西”。所有的类都继承了Object类。

使用规则: (1)所有的类都继承了Object,即使类class P{} 隐式的继承了Object

(2)java中是单继承,Object可能不是类的直接父类,顶级父类

(3)Object变量 可以指向任意一个类的实例对象。

(4) 所有的 数组继承了Object类

Object类的常用方法:

hashcode() 返回值是int ,根据内存地址 计算得到的hashCode (哈希码值)

一般情况下 ,采用== 判断两个对象是否相等,就是判断两个对象的哈希码是否相等

B.equals(Object o) 返回值boolean ,判断传入的o对象,和调用方法的对象b是否相等

如果说equals方法没有重写,等价于o==b ,判断这两个对象的 哈希码值是否一致。

子类 也可以对equals重写,重写之后,有不同的 判断依据

toString() 返回值String ,把对象转成一个String,一般情况sysout(a),实际上就是默认调用a.toString(); 对象的类名@哈希码值

子类可以对toString重写。

2、String和StringBuffer

 String不是基本数据类型,首字母大写,是个类。
String和StringBuffer是常见的字符串处理类
注意事项: 常见的字符处理类,用final修饰,不能被继承。
String类中的属性也用final修饰,值不会发生改变。
StringBuffer值是可变的。
String和StringBuffer的区别

String对象创建方式:

声明并赋值:String bb = "123";// 这种赋值方式, 值保存在常量池中,效率相对高。

构造方法赋值

String aa = new String(); //无参数构造方法

String cc = new String("123");//具体值 保存到了 堆内存

String dd = new String(chars);//构造方法参数 char类型的数组

new String(byte[],”utf-8”)//byte数组,和编码格式

String的常见方法:

char charAt(index) 获取字符串中指定位置的字符。其中,参数index指的是字符串的序数,字符串的序数从0开始到length()-1

String concat(String str) 将该String对象与str连接在一起。与Java提供的字符串连接运算符“+”的功能相同

Boolean equals(Object anObject) 将该字符串与指定对象相比,如果两者包含的字符序列相等,则返回true;否则返回false

byte[] getBytes() 将该String对象转换成byte数组

int indexOf(String str) 找出str子字符串在该字符串中第一次出现的位置

int length() 返回当前字符串的长度

String replace(char oldChar,char newChar) 将字符串中的第一个oldChar替换成newChar

boolean endsWith(String sufffix) 该String对象是否以sufffix结束

String substring

(int beginIndex,int endIndex) 获取从beginIndex位置开始到endIndex(不包括)位置的子字符串

char[] toCharArray() 将该String对象转换成char数组

String toUpperCase() 将字符串转换成大写

StringBuffer类常用方法

StringBuff append(String str) 将字符串str追加到当前StringBuffer对象

StringBuffer insert (intoffset , String str) 按顺序将字符串str插入到当前StringBuffer对象的intoffset位置

StringBuffer reverse() 将当前StringBuffer对象的字符序列用其反转形式取代

void setCharAt(int index, char ch) 将index索引处的字符设置为ch

3、Math类

Math类:提供常见的数学运算类。常见方法: 立方、平方、log、sin 、cos

Math使用注意:

(1)Math类构造方法用private修饰,Math不能被new创建实例。

(2)Math类也是用final修饰,不允许被继承。

(3)Math中的方法和属性全用static修饰,不用new对象,

(4)使用时候:类名.方法名() 类名.属性

//Math类中的 方法和 属性全用static 修饰, 类名.方法名() 类名.属性

System.out.println("-10 的绝对值"+Math.abs(-10)); //求数的绝对值

// 求 幂 2的2次方, 3的10次方

System.out.println("2的3次方"+Math.pow(2, 3));;

//求数的四舍五入

System.out.println("2.3的四舍五入值"+ Math.round(2.3));

//地板值:比 数小 的最大值 , 求小数的整数部分

System.out.println("2.3的地板值"+Math.floor(2.3));

//天花板值

System.out.println("2.3的地板值"+Math.ceil(2.3));

//随机数:随机产生 [0,1)的小数 ,左闭右开

System.out.println("随机产生数字"+Math.random());

4、日期处理类

Java中提供了一些对日期出来的类,

Date类:提供 年月日时分秒

构造方法 : Date() 获取当前系统时间

Date(Long 时间间隔) 以毫秒为单位,从1970年1月1号开始往后计算

常用方法:getTime() 就是获取当前时间 和1970年的毫秒差

SimpleDateFormat类:String和Date转换

Date类型对象转String:日期在显示的时候,符合人们的习惯

//year 年份, month月份,day 日 , hour 小时 ,minute 分钟,second 秒

//y代表的是年, 一个y代表一位数字

//M代表月份,

//h代表小时, HH 24小时制 hh 12小时制

SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss");

//format 按照写好的转换格式,把date对象转成string

String str = sdf.format(now);

System.out.println(str);

String 转Date:我们要把String按照时间处理

String jieyue ="2020-5-30";

//字符串 转Date,

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

Date date = sdf.parse(jieyue);

System.out.println(date);

Calendar:日历类。

使用规则:(1)是一个抽象类, 不能够直接去new对象

(2)日历类的方法,绝大数不是static修饰的,必须 要用对象才能够调用方法

(3)类中提供静态方法getInstance()创建对象

具体使用:

通过getInstance()方法创建Calendar的子类对象

Calendar calendar=Calendar.getInstance();

从Calendar中获取Date对象

Date date=calendar.getTime();

通过Date对象获得对应的Calendar对象

calendar.setTime(new Date());

Object类、String和StringBuffer、Math类、日期处理类的更多相关文章

  1. 类 String、StringBuffer、StringBuilder

    类 String String 类代表字符串.Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现.字符串是常量:它们的值在创建之后不能更改.字符串缓冲区支持 ...

  2. 深入了解String,StringBuffer和StringBuilder三个类的异同

    Java提供了三个类,用于处理字符串,分别是String.StringBuffer和StringBuilder.其中StringBuilder是jdk1.5才引入的. 这三个类有什么区别呢?他们的使用 ...

  3. 15_常用API_第15天(Object、String、StringBuffer、用户登陆注册)_讲义

    今日内容介绍 1.Object 2.String 3.StringBuilder 01API概念 A:API(Application Programming Interface) 应用程序编程接口 B ...

  4. 6、Object、String、StringBuffer

    Java的Api以及Object类 API概念 * A:API(Application Programming Interface) * 应用程序编程接口 * B:Java API * 就是Java提 ...

  5. 常用API(Object、String、StringBuffer、用户登陆注册)

    常用API 今日内容介绍 u Object u String u StringBuilder 第1章 Java的API及Object类 在以前的学习过程中,我们都在学习对象基本特征.对象的使用以及对象 ...

  6. java基础(15):常用API(Object、String、StringBuffer)

    1. Java的API及Object类 在以前的学习过程中,我们都在学习对象基本特征.对象的使用以及对象的关系.接下来我们开始使用对象做事情,那么在使用对象做事情之前,我们要学习一些API中提供的常用 ...

  7. 代码块&&API(object、String、StringBuffer、StringBuilder)

    day 07 代码块 局部代码块 定义在方法中,用户划分区域的 构造代码块 和成员方法并列,用{}包裹 每次创建对象的时候都会执行,优先于构造方法 静态代码块 构造代码块前面用static声明 在同类 ...

  8. Java_字符类(Character、String、StringBuffer)_char是基本数据类型,Character是其包装类型。

         在java中有三个类负责对字符的操作:Character.String.StringBuffer.其中,Character类是对单个字符进行操作,String是对一个字符序列的操作,Stri ...

  9. 详解 JDK8 新增的日期时间类

    JDK8 新增的日期时间类 在本人之前的博文<处理时间的类 -- System类.Date类 .SimpleDateFormat类 与 Calendar类>中,讲到过表示时间的类,有三类: ...

  10. String、StringBuffer、StringBuilder之间区别

    String,StringBuffer,StringBuilder 之间区别 在字符串处理中C#提供了String.StringBuffer.StringBuilder三个类.那么他们到底有什么优缺点 ...

随机推荐

  1. 如何使用Vite创建Vue3的uniapp项目

    项目结构 my-vue3-project ├─ .env //默认环境变量 ├─ .env.development //开发环境变量 ├─ .eslintrc-auto-import.json //( ...

  2. Solution -「CSP 2019」Centroid

    Description Link. 给定一棵 \(n\) 个点的树,设 \(E\) 为边集,\(V'_x,\ V'_y\) 分别为删去边 \((x,y)\) 后 点 \(x\) 所在的树的点集和点 \ ...

  3. JUC并发编程(4)—ThreadLocal介绍(超详细 集大成版本!!!)

    目录 ThreadLocal简介 ThreadLocal与Synchronized的区别 ThreadLocal API ThreadLocal的使用案例 阿里ThreadLocal规范 Thread ...

  4. 如何使用Arduino创建摩尔斯电码生成器

    摩尔斯电码工作原理 摩尔斯电码发明于19世纪,使用非常简单的长短脉冲序列(通常为电和划)来远距离发送消息.通过将字母表中的字母编码为电和划的组合,信息可以只用一个单一的电子或声音信号来表达. 为了说明 ...

  5. MySQL数据库操作 Lab1

              实验一 MySQL数据库操作 实验目的: 掌握MySQL安装.配置与登录方法,使用MySQL客户创建数据库及对数据库表完成各种操作 实验内容: 1. 安装MySQL数据库管理系统, ...

  6. MySQL5.7版本单节点大数据量迁移到PXC8.0版本集群全记录-1

    一个5.7版本的MySQL单点数据库,版本信息是: Server version: 5.7.31-log MySQL Community Server (GPL) 数据量已达到760G,日常存在性能问 ...

  7. Kubernetes---修改证书可用年限

    kubeadm---修改apiserver证书有效期 源码编译自签证书: 需要有go环境,从github源码仓库拉取k8s对应版本的源码进行修改/编译.覆盖原来的kubeadm即可. 1.查询证书可用 ...

  8. 线段树(nb)

    今天刚学习了线段树,赶紧趁热打了两遍模版 下面都是线段树的基本操作,这个板子是维护的区间中的最大值,当然修改change和build包括线段树中的data可以维护区间上的不同信息. 首先介绍一下线段树 ...

  9. VM虚拟机在添加虚拟硬盘后无法boot的解决方案

    今天本想自己配一个mini Linux系统,但是在给系统增加一块硬盘的时候,发现出现以下问题 CentOS打不开(其实经过很久也能进去,但是指令全部失效) 由于不知道原因最后就重装了系统,奇怪的是,重 ...

  10. Redis创始人开源最小聊天服务器,仅200行代码,几天功夫已获2.8K Star!

    中午时候,在技术交流群里聊起关于Redis创始人的一些趣事,比如离开Redis之后,去写科幻小说之类的. 因为好奇科幻小说,TJ君就去搜索了一下.结果一搜,发现Redis作者最近居然又搞了个新活儿! ...