当前位置: 首页 > news >正文

JavaAPI常用类03

目录

java.lang.Math

Math类

代码

运行

Random类

代码

运行

Date类/Calendar类/ SimpleDateFormat类

Date类 

代码

运行

Calendar类 

代码

运行

SimpleDateFormat类

代码一

运行

 常用的转换符

代码二

运行

java.math

BigInteger

代码

运行

BigDecimal

代码

运行

正则表达式

前情摘要

代码

运行 

正则表达式1

代码

运行

正则表达式2 

代码

运行

正则表达式3

代码

运行


java.lang.Math

Math类

代码

package com.ffyc.javaapi.mathdemo;public class MathDemo {public static void main(String[] args) {System.out.println(Math.PI);//3.141592653589793System.out.println(Math.abs(-1));//1System.out.println(Math.sqrt(9));//3.0System.out.println(Math.pow(2, 3));//8.0System.out.println(Math.floor(9.9));//9.0System.out.println(Math.ceil(9.1));//10.0System.out.println(Math.round(9.4));//9System.out.println(Math.round(9.6));//10//返回一个  大于等于0小于1 的随机数System.out.println(Math.random());//0.618879258589192}
}

运行

Random类

代码

package com.ffyc.javaapi.mathdemo;import java.util.Arrays;
import java.util.Random;public class RandomDemo {public static void main(String[] args) {Random random = new Random();//在取值范围内返回随机返回一个结果System.out.println(random.nextBoolean());System.out.println(random.nextDouble());System.out.println(random.nextFloat());System.out.println(random.nextInt());//在指定范围内随机返回一个随机数,大于等于0 小于给定的值System.out.println(random.nextInt(10));byte[] bytes = new byte[6];random.nextBytes(bytes);System.out.println(Arrays.toString(bytes));}
}

运行

Date类/Calendar类/ SimpleDateFormat类

Date类 

      import java.util.Date; 
      new Date();对象 得到一个系统的当前时间
      getYear();上面有一个删除线,表示此方法是弃用的方法,不建议使用,有新的方法代替,但是也是可以调用的 

代码

package com.ffyc.javaapi.datedemo;import java.util.Date;public class DateDemo{ public static void main(String[] args) {Date date = new Date();System.out.println(date.getYear()+1900);//月份是从零开始System.out.println(date.getMonth()+1);//0 1 2 3 ....//今天是第几天System.out.println(date.getDate());//星期从星期天开始,星期天是0,星期六是6System.out.println(date.getDay());//获取当前小时System.out.println(date.getHours());//获取当前分钟System.out.println(date.getMinutes());//获取当前秒钟System.out.println(date.getSeconds());//毫秒值---获取的是1970年1970 1.1 0:0:0到程序运行那一刻的时间差//测试程序运行时间  程序运行前new Date().getTime() 程序运行后new Date().getTime()System.out.println(date.getTime());//1708740879814//获取当前程序运行时的时间类信息System.out.println(date);//通过有参的构造方法,将一个毫秒的时间封装成一个日期对象Date d = new Date(1708740879814l);System.out.println(d);}
}

运行

Calendar类 

      Calendar 日历类 抽象类 用来定义日历功能,具体的实现可以交给子类实现 
      GregorianCalendar  格里高利历(公历)是Calendar抽象类具体子类 

代码

package com.ffyc.javaapi.datedemo;import java.util.Calendar;
import java.util.GregorianCalendar;public class CalenderDemo { public static void main(String[] args) {//Calendar calendar = new GregorianCalendar();Calendar calendar = Calendar.getInstance();//get(具体的日历属性)System.out.println(calendar.get(Calendar.YEAR));System.out.println(calendar.get(Calendar.MONTH) + 1);//月中第几天System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//周中第几天 星期天是一周中的第一天System.out.println(calendar.get(Calendar.DAY_OF_WEEK));//年中第几天System.out.println(calendar.get(Calendar.DAY_OF_YEAR));//月中第几周System.out.println(calendar.get(Calendar.WEEK_OF_MONTH));//年中第几周System.out.println(calendar.get(Calendar.WEEK_OF_YEAR));//几时System.out.println(calendar.get(Calendar.HOUR));//几分System.out.println(calendar.get(Calendar.MINUTE));//几秒System.out.println(calendar.get(Calendar.SECOND));//设置系统时间calendar.set(2022, 9, 10);System.out.println(calendar.get(Calendar.YEAR));//毫秒值---获取的是1970年1970 1.1 0:0:0到程序运行那一刻的时间差System.out.println(calendar.getTimeInMillis());}
}

运行

SimpleDateFormat类

代码一

      将Date类型 格式化为 给定格式的字符串 

package com.ffyc.javaapi.datedemo;import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;public class SimpleDateFormatDemo { public static void main(String[] args) throws ParseException {Date date1 = new Date();String s1 = "张三";//System.out.println(s1 + "" + date.getYear()+1988+date.getMonth()+1);/*yyyy 4位年MM 月dd 日 月中的天HH 24小时刻mm 分钟ss 秒S 毫秒E 星期几*/SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy年-MM月-dd日 HH时:mm分:ss秒:S毫秒 E");String datestr = sdf1.format(date1);System.out.println(s1+""+datestr);c}
}

运行

 常用的转换符

代码二

          把字符串 转为 Date类型 

package com.ffyc.javaapi.datedemo;import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;public class SimpleDateFormatDemo {   String s2 = "2003年-3月-2日";SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy年-MM月-dd日");Date date2 = sdf2.parse(s2);System.out.println(date2);}
}

运行

java.math

BigInteger

代码

package com.ffyc.javaapi.mathdemo;import java.math.BigInteger;public class BigIntegerDemo {public static void main(String[] args) {//long a = 2222222222222222233333l;BigInteger a = new BigInteger("22222222222222222333333333333");BigInteger b = new BigInteger("22222222222222222333333333333");BigInteger c = a.add(b);System.out.println(a);System.out.println(b);System.out.println(c);}
}

运行

BigDecimal

代码

package com.ffyc.javaapi.mathdemo;import java.math.BigDecimal;public class BigDecimaDemo {public static void main(String[] args) {System.out.println((0.1 + 0.2) == 0.3);System.out.println(0.1 + 0.2);BigDecimal bd1 = new BigDecimal("0.1");BigDecimal bd2 = new BigDecimal("0.2");BigDecimal bd3 = bd1.add(bd2);System.out.println(bd3);BigDecimal bd4 = new BigDecimal("10");BigDecimal bd5 = new BigDecimal("3");//在除法运算时,默认遇到无限循环会报错,需要指定保留的小数位数,以免近似值的策略BigDecimal bd6 = bd4.divide(bd5, 2, BigDecimal.ROUND_CEILING);System.out.println(bd6);}
}

运行

正则表达式

正则表达式
        规则
        是一种模式匹配语法,可以使用一些符号,来定义一个规则,然后用规则与字符串进行匹配

前情摘要

代码

package com.ffyc.javaapi.stringdemo;import java.util.Arrays;public class StringDemo8 {/*String s = "abc";  char[] c = ['a','b','c'];*/public static void main(String[] args) {String name = "张三";//张三name += "111";//张三111System.out.println(name);String s = "ab:cd:efg";System.out.println(Arrays.toString(s.split(":")));}
}

运行 

正则表达式1

              验证输入的内容必须是一个手机号格式
                第一位:1
                第二位:3 5 7 8 9
                从第三位开始都是数字即可
                拿到字符串每一位进行判断
              正则表达式中符号:
                \d 匹配的是0-9之间的数字 

代码

package com.ffyc.javaapi.stringdemo;public class StringDemo8 { public static void main(String[] args) {  String p = "13245678912";//匹配一位数字boolean b1 = p.matches("\\d");System.out.println(b1);//匹配任意个数字boolean b2 = p.matches("\\d*");System.out.println(b2);//恰好n次boolean b3 = p.matches("\\d{9}");System.out.println(b3);//至少n次boolean b4 = p.matches("\\d{3,}");System.out.println(b4);//至少n次,不超过m次boolean b5 = p.matches("\\d{3,6}");System.out.println(b5);//[3578] 匹配3或5或7或8boolean b6 = p.matches("[3578]*");System.out.println(b6);//电话号码判断boolean b7 = p.matches("1[35789]\\d{9}");System.out.println(b7);//qq号  数字 6-12位 0不能开头boolean q = p.matches("[1-9]\\d{5,11}");System.out.println(q);}
}

运行

正则表达式2 

         [1235]
         [1-9]
         [a-z]
         [A-Z]
         \\w  ==  []A-z0-9]
         .匹配任意的字符   \\.进行转义,只能匹配.
         |   X|Y  或 

代码

package com.ffyc.javaapi.stringdemo;public class StringDemo9 {public static void main(String[] args) { String p1 = "13FGF24V_HCCY5678L912";/*boolean b1 = p.matches("[a-z]*");boolean b1 = p.matches("[A-Z]*");boolean b1 = p.matches("[a-z][A-Z]*");boolean b1 = p.matches("[A-z]*");*/boolean b1 = p1.matches("\\w*");//[A-z 0-9]System.out.println(b1);String p2 = "dvjcdjSC@145_54.com";//邮箱模式 fxghccgfg@123hgvhg.com  .com.cnboolean b2 = p2.matches("\\w{6,10}@\\w{2,6}\\.(com|com\\.cn)");System.out.println(b2);}
}

运行

正则表达式3

代码

package com.ffyc.javaapi.stringdemo;import java.util.Arrays;public class StringDemo10 {public static void main(String[] args) {String s1 = "ss8ds5sxw";System.out.println(Arrays.toString(s1.split("\\d")));String s2 = "jkoj5nvf7vew";System.out.println(s2.replace("j", "J"));//"\\d" 正则表达式 匹配数字System.out.println(s2.replaceAll("\\d", "J"));System.out.println(s2.replaceFirst("\\d", "@"));}
}

运行

相关文章:

JavaAPI常用类03

目录 java.lang.Math Math类 代码 运行 Random类 代码 运行 Date类/Calendar类/ SimpleDateFormat类 Date类 代码 运行 Calendar类 代码 运行 SimpleDateFormat类 代码一 运行 常用的转换符 代码二 运行 java.math BigInteger 代码 运行 BigDecimal …...

SpringBoot/Java中OCR实现,集成Tess4J实现图片文字识别

场景 Tesseract Tesseract是一个开源的光学字符识别(OCR)引擎,它可以将图像中的文字转换为计算机可读的文本。 支持多种语言和书面语言,并且可以在命令行中执行。它是一个流行的开源OCR工具,可以在许多不同的操作系…...

【深度学习目标检测】十九、基于深度学习的芒果计数分割系统-含数据集、GUI和源码(python,yolov8)

使用深度学习算法检测芒果具有显著的优势和应用价值。以下是几个主要原因: 特征学习的能力:深度学习,特别是卷积神经网络(CNN),能够从大量的芒果图像中自动学习和提取特征。这些特征可能是传统方法难以手动…...

骑砍战团MOD开发(48)-多人联机模式开发环境搭建

一.多人联机模式网络拓扑图 <1.局域网网络拓扑图 <2.互联网网络拓扑图 二.多人联机模式配置 MOD目录下module.ini修改配置项 has_multiplayer 1 has_single_player 1 三.服务端创建 引擎内置presentation页面: prsnt_game_multiplayer_admin_panel start_multi…...

Java+SpringBoot+Vue+MySQL:美食推荐系统的技术革新

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…...

【服务发现--ingress】

1、ingress介绍 Ingress 提供从集群外部到集群内服务的 HTTP 和 HTTPS 路由。 流量路由由 Ingress 资源所定义的规则来控制。 Ingress 是对集群中服务的外部访问进行管理的 API 对象&#xff0c;典型的访问方式是 HTTP。 Ingress 可以提供负载均衡、SSL 终结和基于名称的虚拟…...

Yolov8有效涨点:YOLOv8-AM,添加多种注意力模块提高检测精度,含代码,超详细

前言 2023 年&#xff0c;Ultralytics 推出了最新版本的 YOLO 模型。注意力机制是提高模型性能最热门的方法之一。 本次介绍的是YOLOv8-AM&#xff0c;它将注意力机制融入到原始的YOLOv8架构中。具体来说&#xff0c;我们分别采用四个注意力模块&#xff1a;卷积块注意力模块…...

苹果分拣检测YOLOV8NANO

苹果分拣&#xff0c;可以检测成熟、切片、损坏、不成熟四种类型&#xff0c;YOLOV8NANO&#xff0c;训练得到PT模型&#xff0c;然后转换成ONNX&#xff0c;OPENCV的DNN调用&#xff0c;支持C,PYTHON 苹果分拣检测YOLOV8NANO&#xff0c;检测四种类型苹果...

使用 Verilog 做一个可编程数字延迟定时器 LS7211-7212

今天的项目是在 Verilog HDL 中实现可编程数字延迟定时器。完整呈现了延迟定时器的 Verilog 代码。 所实现的数字延迟定时器是 CMOS IC LS7212&#xff0c;用于生成可编程延迟。延迟定时器的规格可以在这里轻松找到。基本上&#xff0c;延迟定时器有 4 种操作模式&#xff1a;…...

戏说c语言文章汇总

c语言的起源GNU C和标准C第一篇: hello c!第二篇: 为什么需要编译第三篇: 当你运行./a.out时&#xff0c;发生了什么&#xff1f;第四篇: 简单的加法器第五篇: 两个正数相加竟然变成了负数&#xff01;第六篇: 西西弗斯推石头(循环)第七篇: 九九乘法表(双循环)第八篇: 如果上天…...

面试redis篇-12Redis集群方案-分片集群

原理 主从和哨兵可以解决高可用、高并发读的问题。但是依然有两个问题没有解决&#xff1a; 海量数据存储问题高并发写的问题 使用分片集群可以解决上述问题&#xff0c;分片集群特征&#xff1a; 集群中有多个master&#xff0c;每个master保存不同数据每个master都可以有…...

【Java EE初阶二十三】servlet的简单理解

1. 初识servlet Servlet 是一个比较古老的编写网站的方式&#xff0c;早起Java 编写网站,主要使用 Servlet 的方式&#xff0c;后来 Java 中产生了一个Spring(一套框架)&#xff0c;Spring 又是针对 Servlet 进行了进一步封装,从而让我们编写网站变的更简单了&#xff1b;Sprin…...

c++ http操作接口

很简单的使用libcurl来操作http与服务器来通讯&#xff0c;包含http与https&#xff0c;对外只开放 #include "request.h" #include "response.h" #include "url.h" 三个头文件&#xff0c;简单易用&#xff0c;使用的实例如下&#xff1a; vo…...

oracle官网下载早期jdk版本

Java Downloads | Oracle JDK Builds from Oracle 以上压缩版&#xff0c;以下安装版 Java Downloads | Oracle 该链接往下拉能看到jdk8和jdk11的安装版 -- end...

Python爬虫实战:图片爬取与保存

引言&#xff1a; 在本文中&#xff0c;我们将学习如何使用Python创建一个简单的图片爬虫。 我们将利用requests库来发送HTTP请求&#xff0c;BeautifulSoup库来解析HTML页面&#xff0c;以及os和shutil库来下载和保存图片。通过这个教程&#xff0c;你将学会如何爬取网…...

CMS垃圾回收器

CMS垃圾回收 CMS GC的官方名称为“Mostly Concurrenct Mark and Sweep Garbage Collector”&#xff08;最大-并发-标记-清除-垃圾收集器&#xff09;。 作用范围&#xff1a; 老年代 算法&#xff1a; 并发标记清除算法。 启用参数&#xff1a;-XX:UseConMarkSweepGC 默认回收…...

【力扣白嫖日记】184.部门工资最高的员工

前言 练习sql语句&#xff0c;所有题目来自于力扣&#xff08;https://leetcode.cn/problemset/database/&#xff09;的免费数据库练习题。 今日题目&#xff1a; 184.部门工资最高的员工 表&#xff1a;Employee 列名类型idintnamevarcharsalaryvarchardepartmentIdint …...

JAVA讲解算法-排序算法-选择排序算法-02

一、定义 选择排序法是一种不稳定的排序算法。它的工作原理是每一次从待排序的数据元素中选出最小&#xff08;或最大&#xff09;的一个元素&#xff0c;存放在序列的起始位置&#xff0c;然后&#xff0c;再从剩余未排序元素中继续寻找最小&#xff08;大&#xff09;元素&a…...

【初始RabbitMQ】高级发布确认的实现

在生产环境中由于一些不明原因&#xff0c;导致 rabbitmq 重启&#xff0c;在 RabbitMQ 重启期间生产者消息投递失败&#xff0c; 导致消息丢失&#xff0c;需要手动处理和恢复。于是&#xff0c;我们开始思考&#xff0c;如何才能进行 RabbitMQ 的消息可靠投递呢&#xff1f; …...

用39块钱的全志V851se视觉开发板做了个小相机,还可以物品识别、自动追焦!

用39块钱的V851se视觉开发板做了个小相机。 可以进行物品识别、自动追焦&#xff01; 这个超低成本的小相机是在V851se上移植使用全志在线开源版本的Tina Linux与OpenCV框架开启摄像头拍照捕获视频&#xff0c;并结合NPU实现Mobilenet v2目标分类识别以及运动追踪等功能…并最终…...

日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻

在如今就业市场竞争日益激烈的背景下&#xff0c;越来越多的求职者将目光投向了日本及中日双语岗位。但是&#xff0c;一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧&#xff1f;面对生疏的日语交流环境&#xff0c;即便提前恶补了…...

地震勘探——干扰波识别、井中地震时距曲线特点

目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波&#xff1a;可以用来解决所提出的地质任务的波&#xff1b;干扰波&#xff1a;所有妨碍辨认、追踪有效波的其他波。 地震勘探中&#xff0c;有效波和干扰波是相对的。例如&#xff0c;在反射波…...

FFmpeg 低延迟同屏方案

引言 在实时互动需求激增的当下&#xff0c;无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作&#xff0c;还是游戏直播的画面实时传输&#xff0c;低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架&#xff0c;凭借其灵活的编解码、数据…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例

使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件&#xff0c;常用于在两个集合之间进行数据转移&#xff0c;如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model&#xff1a;绑定右侧列表的值&…...

基于Flask实现的医疗保险欺诈识别监测模型

基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施&#xff0c;由雇主和个人按一定比例缴纳保险费&#xff0c;建立社会医疗保险基金&#xff0c;支付雇员医疗费用的一种医疗保险制度&#xff0c; 它是促进社会文明和进步的…...

大语言模型如何处理长文本?常用文本分割技术详解

为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...

Web 架构之 CDN 加速原理与落地实践

文章目录 一、思维导图二、正文内容&#xff08;一&#xff09;CDN 基础概念1. 定义2. 组成部分 &#xff08;二&#xff09;CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 &#xff08;三&#xff09;CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 &#xf…...

深度学习习题2

1.如果增加神经网络的宽度&#xff0c;精确度会增加到一个特定阈值后&#xff0c;便开始降低。造成这一现象的可能原因是什么&#xff1f; A、即使增加卷积核的数量&#xff0c;只有少部分的核会被用作预测 B、当卷积核数量增加时&#xff0c;神经网络的预测能力会降低 C、当卷…...

HarmonyOS运动开发:如何用mpchart绘制运动配速图表

##鸿蒙核心技术##运动开发##Sensor Service Kit&#xff08;传感器服务&#xff09;# 前言 在运动类应用中&#xff0c;运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据&#xff0c;如配速、距离、卡路里消耗等&#xff0c;用户可以更清晰…...

RSS 2025|从说明书学习复杂机器人操作任务:NUS邵林团队提出全新机器人装配技能学习框架Manual2Skill

视觉语言模型&#xff08;Vision-Language Models, VLMs&#xff09;&#xff0c;为真实环境中的机器人操作任务提供了极具潜力的解决方案。 尽管 VLMs 取得了显著进展&#xff0c;机器人仍难以胜任复杂的长时程任务&#xff08;如家具装配&#xff09;&#xff0c;主要受限于人…...