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三个类.那么他们到底有什么优缺点 ...
随机推荐
- Vue vs React:你需要知道的一切
Vue 和 React 是创建 JavaScript 网络应用程序最常用的两种工具.但我们该如何在两者之间做出选择呢?在本篇 Vue 与 React 的对比中,我们将尝试找出答案.我们将回顾每种工具的 ...
- Vue路由新开页面跳转和传参传递
需求:在后台管理系统首页列表项中,点击详情跳转到系统中指定菜单的路由要求新开窗口并需要带上参数查询. 第一种方法: 1 const { id } = item; 2 let routeUrl = th ...
- 解决 Steam 无法自动登录的问题
前言 劳动节假期闲的没事,重装一下电脑,结果电脑的 Steam 不会自动登录了,每次重启电脑就要重新输入密码和令牌.查了一下居然是 Windows 凭据管理器默认不会自动启动的问题. 解决方法 打开计 ...
- 【Unity3D】UI Toolkit容器
1 前言 UI Toolkit简介 中介绍了 UI Builder.样式属性.UQuery.Debugger,UI Toolkit元素 中介绍了 Label.Button.TextField.To ...
- Linux内存管理 | 一、内存管理的由来及思想
1.前言 <中庸>有:"九层之台,起于垒土" 之说,那么对于我们搞技术的人,同样如此! 对于Linux内存管理,你可以说没有留意过,但是它存在于我们日常开发的方方面面, ...
- 运行 Python 脚本/代码的几种方式
哈喽大家好,我是咸鱼 我们知道,python 脚本或者说 python 程序其实是一个包含了 python 代码的文件.要让它们实现特定功能,我们需要知道该如何运行(run)它 通过运行 python ...
- Python 轻松生成PDF文档
PDF(Portable Document Format)是一种常用的文档格式,具有跨平台兼容性.保真性.安全性和交互性等特点.我们日常生活工作中的合同.报告.论文等通常都采用PDF格式,以确保文档在 ...
- 解决ADS1.2与MDK4.7冲突问题
需要添加2个系统变量. 1,在我的电脑点击属性--->高级--->环境变量---->系统变量,增加环境变量名: ARMCC5LIB 变量值:C:\Keil\ARM\ARMCC\lib ...
- node 实现上传 和 下载 文件接口 简易版
var express = require('express');var fs = require('fs');var path = require('path');var multipart = r ...
- webpack配置局域网访问项目
要配置webpack允许局域网访问项目,你需要做以下几个步骤: 1. 在webpack配置文件中,找到devServer选项,并设置其属性`host`为`0.0.0.0`.这将允许其他设备通过局域 ...