Java 比较字符串实例详解

发布时间 - 2026-01-11 01:45:26    点击率:

 Java 比较字符串实例详解

公司让实现一个自动清除1小时内数据,SQL不熟悉,无奈之下,只能本地DB存储当前时间+小时去和当前时间进行比对。折腾好半天,突然想到Java提供了一个方法,也是进行字符串比较的,傻眼了。一起来看看吧~

CompareTo()方法简介

首先,它属于java.lang.String包下,是Java提供的一个字符串比较的方法,详情介绍如下:

CompareTo()返回值: int

返回值类型分别有三种,小于0,等于0,大于0

1. 如果字符串相等返回值0;

2. 如果第一个字符和参数的第一个字符不等,结束比较,返回他们之间的差值(ascii码值)(负值前字符串的值小于后字符串,正值前字符串大于后字符串);

3. 如果第一个字符和参数的第一个字符相等,则以第二个字符和参数的第二个字符做比较,以此类推,直至比较的字符或被比较的字符有一方全比较完,这时就比较字符的长度。

PS:拓展下什么是ascii码值

ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO/IEC 646。
说白了ASCII码就是解决了一个以数字形式表示文本的问题

使用+实践 二合一

接下来要实现的就是本文开头说的比较时间。

上代码~

System.out.println("当前时间为:"+getTimeByHour());
  System.out.println(getTimeByHour());
  System.out.println("下一小时为:"+getTimeByHour(1));
  System.out.println("对比结果为:"+getTimeByHour().compareTo(getTimeByHour(1)));
  System.out.println("对比结果为:"+getTimeByHour(1).compareTo(getTimeByHour(0)));
  System.out.println("对比结果为:"+getTimeByHour(1).compareTo(getTimeByHour(1)));

/**
  * 获取当前时间
  * @return
  */
 public static String getTimeByHour() {
  Calendar calendar = Calendar.getInstance();
  calendar.set(Calendar.HOUR_OF_DAY, calendar.get(Calendar.HOUR_OF_DAY) + 0);
  return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar.getTime());
 }

 /**
  * 获取当前时间后一小时
  * @param hour
  * @return
  */
 public static String getTimeByHour(int hour) {
  Calendar calendar = Calendar.getInstance();
  calendar.set(Calendar.HOUR_OF_DAY, calendar.get(Calendar.HOUR_OF_DAY) + hour);
  return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar.getTime());
 }

运行结果

当前时间为:2017-03-28 23:42:06 
下一小时为:2017-03-29 00:42:06 
对比结果为:-1 
对比结果为:1 
对比结果为:0

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# Java  # 比较字符串 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: JavaScript中如何操作剪贴板_ClipboardAPI怎么用  Laravel Session怎么存储_Laravel Session驱动配置详解  Laravel表单请求验证类怎么用_Laravel Form Request分离验证逻辑教程  如何使用 Go 正则表达式精准提取括号内首个纯字母标识符(忽略数字与嵌套)  音响网站制作视频教程,隆霸音响官方网站?  Laravel如何自定义分页视图?(Pagination示例)  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?  Laravel怎么防止CSRF攻击_Laravel CSRF保护中间件原理与实践  韩国服务器如何优化跨境访问实现高效连接?  Laravel如何使用集合(Collections)进行数据处理_Laravel Collection常用方法与技巧  个人网站制作流程图片大全,个人网站如何注销?  如何用AI帮你把自己的生活经历写成一个有趣的故事?  如何快速配置高效服务器建站软件?  Laravel如何实现API资源集合?(Resource Collection教程)  详解vue.js组件化开发实践  香港服务器网站生成指南:免费资源整合与高速稳定配置方案  JS中页面与页面之间超链接跳转中文乱码问题的解决办法  阿里云网站搭建费用解析:服务器价格与建站成本优化指南  如何为不同团队 ID 动态生成多个独立按钮  如何在IIS中新建站点并解决端口绑定冲突?  音乐网站服务器如何优化API响应速度?  Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】  iOS正则表达式验证手机号、邮箱、身份证号等  齐河建站公司:营销型网站建设与SEO优化双核驱动策略  如何快速使用云服务器搭建个人网站?  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  Win11怎样安装网易有道词典_Win11安装词典教程【步骤】  Windows10如何删除恢复分区_Win10 Diskpart命令强制删除分区  Win10如何卸载预装Edge扩展_Win10卸载Edge扩展教程【方法】  Laravel如何构建RESTful API_Laravel标准化API接口开发指南  Laravel全局作用域是什么_Laravel Eloquent Global Scopes应用指南  动图在线制作网站有哪些,滑动动图图集怎么做?  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  如何在 Python 中将列表项按字母顺序编号(a.、b.、c. …)  php静态变量怎么调试_php静态变量作用域调试技巧【解答】  Laravel如何使用Collections进行数据处理?(实用方法示例)  Laravel如何使用Laravel Vite编译前端_Laravel10以上版本前端静态资源管理【教程】  香港服务器网站推广:SEO优化与外贸独立站搭建策略  安克发布新款氮化镓充电宝:体积缩小 30%,支持 200W 输出  今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  Laravel怎么做缓存_Laravel Cache系统提升应用速度的策略与技巧  javascript中对象的定义、使用以及对象和原型链操作小结  Laravel如何使用Guzzle调用外部接口_Laravel发起HTTP请求与JSON数据解析【详解】  网站建设整体流程解析,建站其实很容易!  Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】  Laravel如何配置和使用队列处理异步任务_Laravel队列驱动与任务分发实例  如何在万网利用已有域名快速建站?  微信小程序 五星评分(包括半颗星评分)实例代码  如何在Ubuntu系统下快速搭建WordPress个人网站?  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?