第八周学习笔记DAY.5-实用类介绍

String类

String类位于java.lang包中,具有丰富的方法:计算字符串的长度、比较字符串、连接字符串、提取字符串

length()方法

String类提供了length()方法,确定字符串的长度

equals()方法

String类提供了equals( )方法,比较存储在两个字符串对象的内容是否一致

equals()方法比较原理

equals():检查组成字符串内容的字符是否完全一致

“==”和equals()有什么区别呢?

==:判断两个字符串在内存中的地址, 即判断是否是同一个字符串对象

字符串比较的其他方法

使用equalsIgnoreCase()方法

使用toLowerCase()方法

使用toUpperCase()方法

字符串连接

方法1:使用“+”

方法2:使用String类的concat()方法

字符串常用提取方法

public int indexOf(int ch)
public int indexOf(String value)     搜索第一个出现的字符ch(或字符串value),如果没有找到,返回-1

public int lastIndexOf(int ch)
public int lastIndexOf(String value)   搜索最后一个出现的字符ch(或字符串value),如果没有找到,返回-1

public String substring(int index)  提取从位置索引开始的字符串部分

public String substring(int beginindex, int endindex)   提取beginindex和endindex之间的字符串部分

public String trim() 返回一个前后不含任何空格的调用字符串的副本

本课目标

会使用StringBuffer操作字符串

会使用Date类和Calendar类操作日期时间

会使用SimpleDateFormat类格式化日期时间

StringBuffer类

StringBuffer 对字符串频繁修改(如字符串连接)时,使用StringBuffer类可以大大提高程序执行效率

StringBuffer声明

StringBuffer strb = new StringBuffer();
StringBuffer strb = new StringBuffer("aaa");

StringBuffer的使用

sb.toString();           //转化为String类型
sb.append("**");      //追加字符串
sb.insert (1, "**");    //插入字符串

String类&StringBuffer类

String是不可变对象

经常改变内容的字符串最好不要使用String
StringBuffer是可变的字符串
字符串经常改变的情况可使用StringBuffer,更高效
JDK5.0后提供了StringBuilder,等价StringBuffer

操作日期时间

获取当前日期

java.util.Date类:表示日期和时间
       提供操作日期和时间各组成部分的方法

java.text.SimpleDateFormat类
//创建日期对象
Date date = new Date();
//定制日期格式
SimpleDateFormat formater = new SimpleDateFormat("yyyy- MM-dd HH:mm:ss");
String now = formater.format(date);
System.out.println(now);

Calendar类

抽象类,java.util.Calendar
用于设置和获取日期/时间数据的特定部分

int get(int field)  返回给定日历字段的值
MONTH  指示月
DAY_OF_MONTH  指示一个月中的某天
DAY_OF_WEEK  指示一个星期中的某天

向stringBuffer1中追加内容

StringBuffer append(boolean b)
将 boolean 参数的字符串表示形式追加到序列。
StringBuffer append(char c)
将 char 参数的字符串表示形式追加到此序列。
StringBuffer append(char[] str)
将 char 数组参数的字符串表示形式追加到此序列。
StringBuffer append(char[] str, int offset, int len)
将 char 数组参数的子数组的字符串表示形式追加到此序列。
StringBuffer append(CharSequence s)
将指定的 CharSequence 追加到该序列。
StringBuffer append(CharSequence s, int start, int end)
将指定 CharSequence 的子序列追加到此序列。
StringBuffer append(double d)
将 double 参数的字符串表示形式追加到此序列。
StringBuffer append(float f)
将 float 参数的字符串表示形式追加到此序列。
StringBuffer append(int i)
将 int 参数的字符串表示形式追加到此序列。
StringBuffer append(long lng)
将 long 参数的字符串表示形式追加到此序列。
StringBuffer append(Object obj)
追加 Object 参数的字符串表示形式。
StringBuffer append(String str)
将指定的字符串追加到此字符序列。
StringBuffer append(StringBuffer sb)
将指定的 StringBuffer 追加到此序列中

向StringBuffer1中插入内容

StringBuffer insert(int offset, boolean b)
将 boolean 参数的字符串表示形式插入此序列中。
StringBuffer insert(int offset, char c)
将 char 参数的字符串表示形式插入此序列中。
StringBuffer insert(int offset, char[] str)
将 char 数组参数的字符串表示形式插入此序列中。
StringBuffer insert(int index, char[] str, int offset, int len)
将数组参数 str 的子数组的字符串表示形式插入此序列中。
StringBuffer insert(int dstOffset, CharSequence s)
将指定 CharSequence 插入此序列中。
StringBuffer insert(int dstOffset, CharSequence s, int start, int end)
将指定 CharSequence 的子序列插入此序列中。
StringBuffer insert(int offset, double d)
将 double 参数的字符串表示形式插入此序列中。
StringBuffer insert(int offset, float f)
将 float 参数的字符串表示形式插入此序列中。
StringBuffer insert(int offset, int i)
将 int 参数的字符串表示形式插入此序列中。
StringBuffer insert(int offset, long l)
将 long 参数的字符串表示形式插入此序列中。
StringBuffer insert(int offset, Object obj)
将 Object 参数的字符串表示形式插入此字符序列中。
StringBuffer insert(int offset, String str)
将字符串插入此字符序列中。

将StringBuffer对象转换成String对象


String toString():返回此序列中数据的字符串表示形式。

分别获取年月日、时分秒、星期,进行输出
int getYear():已过时。 从 JDK 1.1 开始,由 Calendar.get(Calendar.YEAR) - 1900 取代。
int year =date.getYear();
int getMonth():已过时。 从 JDK 1.1 开始,由 Calendar.get(Calendar.MONTH) 取代。返回表示月份的数字,该月份包含或开始于此 Date 对象所表示的瞬间。返回的值在 0 和 11 之间,值 0 表示 1 月。
int month =date.getMonth();
int getDate():已过时。 从 JDK 1.1 开始,由 Calendar.get(Calendar.DAY_OF_MONTH) 取代。
int dateDate=date.getDate();
int getHours():已过时。 从 JDK 1.1 开始,由 Calendar.get(Calendar.HOUR_OF_DAY) 取代。
int hours =date.getHours();
int getMinutes() :已过时。 从 JDK 1.1 开始,由 Calendar.get(Calendar.MINUTE) 取代。
int minutes =date.getMinutes();
int getSeconds():已过时。 从 JDK 1.1 开始,由 Calendar.get(Calendar.SECOND) 取代。
int seconds =date.getSeconds();

int getDay():已过时。 从 JDK 1.1 开始,由 Calendar.get(Calendar.DAY_OF_WEEK) 取代。返回此日期表示的周中的某一天。返回值 (0 = Sunday, 1 = Monday, 2 = Tuesday, 3 = Wednesday, 4 = Thursday, 5 = Friday, 6 = Saturday)
int day = date.getDay();

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/580570.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

想要应聘前端工程师——学习路线指南

前端工程师学习路线 按照前端岗位需求,以优先学习工作更需要,面试更常考的内容为原则,由浅入深,层层铺垫,与时俱进,可以较容易地总结出前端学习路线图: HTML / CSS / JavaScript 基础学习 《Web 入门》 MDN 权威入门指南,HTML / CSS / JavaScript 快速上手 《CSS 世界…

安装库后JupyterLab一直报ModuleNotFoundError问题解决

背景: 先安装的Python3.10,安装在默认路径: C:\Users\#用户名省略#\AppData\Local\Programs\Python\Python310\ 后安装的Anaconda,更改过路径在D盘: D:\ProgramData\anaconda3 此时C盘Python安装路径下Scripts文件…

通过阿里云OOS实现定时备份redis实例转储到OSS

功能背景 随着企业业务数据的快速增长,Redis 作为高性能的内存数据存储方案,在多种应用场景下承担着重要的角色。为确保数据安全,定时备份成为了不可或缺的一环。Redis 实例定时备份是关键数据库管理任务的一个重要组成部分,它主…

修改Ubuntu22.04系统图标

在Ubuntu 22.04中更改开机时显示的Ubuntu图标需要修改的设置。 主要思路是用自己图片替换系统图片,保持系统图片同名,同格式。 以下是一般的步骤: 修改启动界面的logo: sudo cp 新logo.png /usr/share/plymouth/themes/spinn…

【mysql】mysql命令使用大全,你想要的都在这里

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

21物联1班作业DES分组密码

DES加密 !!!以下加密自己学号姓名 将密钥zw改为abcde 学号加密 密钥为zw 密钥为abcde DES解密 !!!将desdecode中内容替换成DES加密密文。 学号解密 代码解释 加密代码 问我QQ上要 解密代码 问我QQ上…

【一般排查思路】针对银河麒麟高级服务器操作系统磁盘空间已满

1. 本身磁盘空间已满 有时候我们会看到服务器上有提示“设备上没有空间”,如图1。 图 1 如果是磁盘本身空间已满,我们可以借助du工具来排查,比如首先cd / 切换到根目录,然后 du -sh * | sort -rh | head -n 3查看空间占用最大的…

ardupilot开发 --- RealSense-D400 篇

目录 0. 一些概念1. 用windows检查设备是否正常1. 使用 Intel RealSense SDK 2.0 查看相机图像数据 0. 一些概念 官网:添加链接描述选型:D455 1. 用windows检查设备是否正常 用USB连接D455与PC 下载 Intel.RealSense.Viewer.exe 并打开,设…

无监督学习的评价指标

轮廓系数(Silhouette Coefficient) 轮廓系数用于判断聚类结果的紧密度和分离度。轮廓系数综合了样本与其所属簇内的相似度以及最近的其他簇间的不相似度。 其计算方法如下: 1、计算簇中的每个样本i 1.计算a(i) &#x…

使用Canal实现MySQL主从同步

说明:本文介绍如何使用Canal实现MySQL主从同步的效果,关于Canal入门使用参考:Canal入门使用 启动Canal 首先,设置Canal服务器里,目标节点(即监测的MySQL节点)的配置,启动Canal服务…

多目标果蝇算法及其MATLAB实现

果蝇算法最早的文献是由台湾华夏科技大学的潘文超教授于2011年提出来的。该算法是基于果蝇觅食行为的仿生学原理而提出的一种新兴群体智能优化算法,被称为果蝇优化算法(Fruit Fly Optimization Algorithm, FOA)。通过模拟果蝇利用敏锐的嗅觉和视觉进行捕食的过程&am…

APQC是美国生产力与质量中心

APQC简介 APQC是美国生产力与质量中心( American Productivity and Quality Center)的简称。该中心自1991年开始研究开发流程分类框架(简称PCF),1992年发布PCF1.0。PCF将运营与管理等流程汇总成12项企业级流程类别,每个流程类别包…

项目经理学习PMP对自己工作有多大帮助?

PMP是一种项目管理认证,也是最流行和含金量较高的认证之一。因此,你问它对项目管理有多大帮助,我可以说PMP可以被视为量身定制给项目管理岗人员的一个证书,你能理解它的重要性吗? 随着国家经济建设由基础设施向高端产业…

【新手入门】Git的使用方法,上传自己的项目到GitHub上

Git新手教程 一、Git下载安装二、初始化设置1.网端设置2.用户设置 三、开始上传自己项目1.创建新文件夹,克隆项目地址2.上传文件3.成功运行并上传的界面 报错1.fatal: unable to access https://github.com/ssrzero123/STF-YOLO.git/: error setting certificate fi…

mars3d开发过程中点击面图层飞行定位,设置俯仰角度后,layer.flyTo({没有生效的排查思路

mars3d开发过程中点击面图层飞行定位,设置俯仰角度后,layer.flyTo({没有生效的排查思路记录,给大家提供一下以后排查定位问题的方向 问题场景相关代码: 1.项目本身代码: 2.精简了关键性代码后,就可以去ge…

39-数组 _ 二维数组

39-1 二维数组的创建 行和列编号依旧是从0开始: //arr数组: //1 2 3 4 //2 3 4 5 //2 4 5 6 //三行四列int main() {int arr[3][4]; //存放整数char arr1[5][10]; //存放字符return 0; } 39-2 二维数组的初始化 创建之后,利用初始化赋值…

MySQL-多表查询-练习

练习 1.写一个查询显示所有雇员的 last name、department id、anddepartment name。 SELECT e.LAST_NAME,e.DEPARTMENT_ID,d.DEPARTMENT_NAME FROM employees e,departments d WHERE e.DEPARTMENT_ID d.DEPARTMENT_ID;2.创建一个在部门 80 中的所有工作岗位的唯一列表&#x…

我与C++的爱恋:模板初阶和STL库

​ ​ 🔥个人主页:guoguoqiang. 🔥专栏:我与C的爱恋 ​朋友们大家好,本篇文章介绍一下模版和对STL进行简单的介绍,后续我们进入对STL的学习! ​ 一、模板 1.泛型模板 泛型编程:…

PotatoPie 4.0 实验教程(23) —— FPGA实现摄像头图像伽马(Gamma)变换

为什么要进行Gamma校正 图像的 gamma 校正是一种图像处理技术,用于调整图像的亮度和对比度,让显示设备显示的亮度和对比度更符合人眼的感知。Gamma 校正主要用于修正显示设备的非线性响应,以及在图像处理中进行色彩校正和图像增强。 以前&am…

unity学习(91)——云服务器调试——补充catch和if判断

本机局域网没问题,服务器放入云服务器后,会出现异常。 想要找到上面的问题,最简单的方法就是在云服务器上下载一个vs2022! 应该不是大小端的问题! 修改一下readMessage的内容,可以直接粘贴到云服务器的。 …
最新文章