当前位置: 首页 > 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目标分类识别以及运动追踪等功能…并最终…...

HTML怎么导出为PDF_HTML页面打印友好设计【介绍】

...

【向量搜索落地生死线】:EF Core 10中Embedding缓存穿透、维度错配、FP16截断这3类故障如何10分钟定位?

第一章&#xff1a;EF Core 10向量搜索扩展的架构演进与核心约束EF Core 10 向量搜索扩展并非简单叠加功能&#xff0c;而是对查询管道、模型元数据和提供程序抽象层的一次深度重构。其核心目标是在保持 LINQ 表达式树语义一致性的前提下&#xff0c;将向量相似性计算&#xff…...

抖音批量下载工具技术解析:如何高效获取去水印视频与直播回放

抖音批量下载工具技术解析&#xff1a;如何高效获取去水印视频与直播回放 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallbac…...

Ansys Mechanical脚本踩坑实录:从‘材料赋值失败’到‘自动网格划分’的避坑指南

Ansys Mechanical脚本实战避坑指南&#xff1a;从报错到精通的进阶之路 第一次在Ansys Mechanical中尝试脚本自动化时&#xff0c;那种挫败感我至今记忆犹新。明明按照教程一字不差地输入代码&#xff0c;却频频遭遇"对象只读"、"材料不识别"等错误提示。作…...

深度学习如何革新药物发现:从细胞图像到AI模型

1. 深度学习在药物发现中的革命性应用药物研发领域正经历一场由深度学习技术驱动的范式变革。传统药物研发平均需要14年时间和数十亿美元投入&#xff0c;而成功率却不足10%。这种"高投入、低产出"的困境主要源于生物系统的极端复杂性——人体包含约37万亿个细胞&…...

ECharts高级玩法:用‘数据分段映射’拯救你的业务大盘折线图(附完整代码与避坑点)

ECharts高级玩法&#xff1a;用‘数据分段映射’拯救你的业务大盘折线图&#xff08;附完整代码与避坑点&#xff09; 当你的业务大盘监控图表中同时存在0.5%的转化率和5000%的爆发式增长数据时&#xff0c;传统线性坐标系会让所有细节压缩在底部——这不是数据可视化&#xf…...

【保姆级教程】Gemma 4 完整体本地部署:突破性能上限,打造你的最强私有化AI

一、 核心亮点&#xff1a;为什么选 Gemma 4&#xff1f;Gemma 4 不仅仅是参数量的提升&#xff0c;更在以下维度进行了深度优化&#xff1a;上下文窗口翻倍&#xff1a;支持更长文档的理解与处理。推理逻辑进化&#xff1a;在逻辑编程和数学运算上更接近闭源旗舰模型。极低损耗…...

C++ vector 自定义排序实战:从基础规则到Lambda表达式进阶

1. 为什么需要自定义vector排序&#xff1f; 在日常开发中&#xff0c;我们经常遇到标准排序规则无法满足需求的情况。比如处理二维坐标点时&#xff0c;可能需要先按x轴降序排列&#xff0c;x相同的再按y轴升序排列&#xff1b;或者处理任务队列时&#xff0c;需要根据任务优先…...

从轴承润滑到代码实现:手把手教你用Python FDM求解稳态雷诺方程

从轴承润滑到代码实现&#xff1a;用Python FDM求解稳态雷诺方程的工程实践 滑动轴承的润滑性能直接影响旋转机械的寿命与效率。想象一下&#xff0c;你正在设计一台高速涡轮机&#xff0c;轴承的油膜压力分布直接决定了设备能否稳定运行。传统方法依赖昂贵的商业仿真软件&…...

哈氏训练助力孩子克服作业拖延症与情绪表达困难

哈氏训练在克服作业拖延症中的应用与效果分析 哈氏训练是一种有效的方式&#xff0c;旨在帮助孩子面对作业拖延症。这种训练方法通过结构化的任务管理技巧&#xff0c;帮助孩子建立良好的学习习惯。在训练过程中&#xff0c;孩子学会将大任务分解为小步骤&#xff0c;从而减轻心…...