Object类、String和StringBuffer、Math类、日期处理类
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类、日期处理类的更多相关文章
- 类 String、StringBuffer、StringBuilder
类 String String 类代表字符串.Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现.字符串是常量:它们的值在创建之后不能更改.字符串缓冲区支持 ...
- 深入了解String,StringBuffer和StringBuilder三个类的异同
Java提供了三个类,用于处理字符串,分别是String.StringBuffer和StringBuilder.其中StringBuilder是jdk1.5才引入的. 这三个类有什么区别呢?他们的使用 ...
- 15_常用API_第15天(Object、String、StringBuffer、用户登陆注册)_讲义
今日内容介绍 1.Object 2.String 3.StringBuilder 01API概念 A:API(Application Programming Interface) 应用程序编程接口 B ...
- 6、Object、String、StringBuffer
Java的Api以及Object类 API概念 * A:API(Application Programming Interface) * 应用程序编程接口 * B:Java API * 就是Java提 ...
- 常用API(Object、String、StringBuffer、用户登陆注册)
常用API 今日内容介绍 u Object u String u StringBuilder 第1章 Java的API及Object类 在以前的学习过程中,我们都在学习对象基本特征.对象的使用以及对象 ...
- java基础(15):常用API(Object、String、StringBuffer)
1. Java的API及Object类 在以前的学习过程中,我们都在学习对象基本特征.对象的使用以及对象的关系.接下来我们开始使用对象做事情,那么在使用对象做事情之前,我们要学习一些API中提供的常用 ...
- 代码块&&API(object、String、StringBuffer、StringBuilder)
day 07 代码块 局部代码块 定义在方法中,用户划分区域的 构造代码块 和成员方法并列,用{}包裹 每次创建对象的时候都会执行,优先于构造方法 静态代码块 构造代码块前面用static声明 在同类 ...
- Java_字符类(Character、String、StringBuffer)_char是基本数据类型,Character是其包装类型。
在java中有三个类负责对字符的操作:Character.String.StringBuffer.其中,Character类是对单个字符进行操作,String是对一个字符序列的操作,Stri ...
- 详解 JDK8 新增的日期时间类
JDK8 新增的日期时间类 在本人之前的博文<处理时间的类 -- System类.Date类 .SimpleDateFormat类 与 Calendar类>中,讲到过表示时间的类,有三类: ...
- String、StringBuffer、StringBuilder之间区别
String,StringBuffer,StringBuilder 之间区别 在字符串处理中C#提供了String.StringBuffer.StringBuilder三个类.那么他们到底有什么优缺点 ...
随机推荐
- 在 Android Studio Java 项目里混合 Kotlin 编程
首先,先搞明白一个概念,这里的 Java 混合 Kotlin 是指文件层级的混合,即 Java 代码还是写在 .java 文件中,Kotlin 代码还是写在 .kt 文件中,只不过是可以在 Java ...
- Visual Studio 2022 Preview 3和2019 16.11发布
Visual Studio 2022 Preview 3 主要特点 个人和团队生产力 附加到进程改进 新项目设计器 黑暗主题提升 开发现代应用 远程测试 新的JavaScript和TypeScript ...
- 介绍五个很实用的IDEA使用技巧
日常开发中,相信广大 Java 开发者都使用过 IntelliJ IDEA 作为开发工具,IntelliJ IDEA 是一款优秀的 Java 集成开发环境,它提供了许多强大的功能和快捷键,可以帮助开发 ...
- Vue2系列(lqz)——Vue介绍
文章目录 Vue入门 零:前端目前形势 前端的发展史 一:Vue介绍 和 基本使用 1.Vue介绍 渐进式框架 网站 2.Vue特点 易用 灵活 高效 3.M-V-VM思想 ① MVVM介绍 ② MV ...
- Python基础——函数的理解、函数对象、函数嵌套、闭包函数、及其应用
文章目录 函数也是变量 可以赋值 可以当做函数当做参数传给另外一个函数 可以当做函数当做另外一个函数的返回值 可以当做容器类型的一个元素 函数对象应用示范 原始版 修正版 函数嵌套 函数的嵌套调用 函 ...
- jmeter生成HTML性能测试报告(非GUI的命令)
非GUI的命令(在cmd执行即可 不需要打开jmeter) 使用命令:jmeter -n -t [jmx file] -l [jtl file] -e -o [report path ...
- Webpack DevServer 代理本地静态目录
前言 项目里需要离线切片地图,但切片地图文件很多,需求上有时无法单独提供一个独立的文件服务器或者切片服务器,放在 public 难免会在调试运行时被复制到 DevServer 上,而这个操作在低层级少 ...
- Sentinel源码改造,实现Nacos双向通信!
Sentinel Dashboard(控制台)默认情况下,只能将配置规则保存到内存中,这样就会导致 Sentinel Dashboard 重启后配置规则丢失的情况,因此我们需要将规则保存到某种数据源中 ...
- ubuntu 20.1 (linux) 下软件安装教程(基本上都是使用命令行安装)
一.node 1. 安装教程 # 第二步,添加源后安装 需要什么版本直接替换后面的数字即可,如果需要21,直接将20替换为21就可以了 curl -sL https://deb.nodesource. ...
- CSP-2023 复赛游记
10.15 决定以后每天晚上都来. 洛天依也是. 10.16 想住 首旅京伦. 大巴车要求车况良好,保险齐全,进校后限速 20 km是什么鬼啊,新型速度单位. 距离最远的考区相距4公里 懂了,大巴车开 ...