JavaAPI常用类03

news2024/11/19 3:25:17

目录

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.141592653589793
        System.out.println(Math.abs(-1));//1
        System.out.println(Math.sqrt(9));//3.0
        System.out.println(Math.pow(2, 3));//8.0

        System.out.println(Math.floor(9.9));//9.0
        System.out.println(Math.ceil(9.1));//10.0

        System.out.println(Math.round(9.4));//9
        System.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,星期六是6
        System.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";//张三111
        System.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或8
        boolean 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.cn
        boolean 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", "@"));
    }
}

运行

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

防御保护----内容安全

八.内容安全--------------------------。 IAE引擎: IAE引擎里面的技术:DFI和DPI技术--- 深度检测技术 DPI --- 深度包检测技术--- 主要针对完整的数据包(数据包分片,分段需要重组),之后对 数据包的内容进行…

设计模式六:策略模式

1、策略模式 策略模式定义了一系列的算法,并将每一个算法封装起来,使每个算法可以相互替代,使算法本身和使用算法的客户端分割开来,相互独立。 策略模式的角色: 策略接口角色IStrategy:用来约束一系列具体…

Qt QWiget 实现简约美观的加载动画 第三季

&#x1f603; 第三季来啦 &#x1f603; 这是最终效果: 只有三个文件,可以直接编译运行 //main.cpp #include "LoadingAnimWidget.h" #include <QApplication> #include <QVBoxLayout> #include <QGridLayout> int main(int argc, char *argv[]…

架构设计:流式处理与实时计算

引言 随着大数据技术的不断发展&#xff0c;流式处理和实时计算在各行各业中变得越来越重要。那么什么是流式处理呢&#xff1f;我们又该怎么使用它&#xff1f;流式处理允许我们对数据流进行实时分析和处理&#xff0c;而实时计算则使我们能够以低延迟和高吞吐量处理数据。本…

axure9.0 工具使用思考

原型设计软件【AxureRP】快速原型设计工具原型设计软件【AxureRP】快速原型设计工具原型设计软件【AxureRP】快速原型设计工具原型设计软件【AxureRP】快速原型设计工具原型设计软件【AxureRP】快速原型设计工具原型设计软件【AxureRP】快速原型设计工具原型设计软件【AxureRP】…

linux中查找进程cpu使用率高的原因

查询哪些进程/线程cpu使用率高 使用 top 命令&#xff1a; 在终端中运行 top 命令&#xff0c;它会实时显示系统中正在运行的进程和线程&#xff0c;并按照 CPU 使用率进行排序。你可以按 Shift P 键按照 CPU 使用率对进程进行排序&#xff0c;或者按 Shift T 键按照线程进…

nginx基础模块配置详解

目录 一、Nginx相关配置 1、nginx配置文件 2、nginx模块 二、nginx全局配置 1、关闭版本或修改版本 1.1 关闭版本 1.2 修改版本 2、修改nginx启动的子进程数 3、cpu与worker进程绑定 4、PID路径 5、nginx进程的优先级 6、调试worker进程打开文件的个数 7、nginx服…

idea 设置启动类置底/设置folders置顶

在新建项目的时候启动类外和swagger交叉展示在包之间&#xff0c;缺少美观&#xff0c;这在一个有洁癖的程序员眼里是非常不能接受的。在网上大量检索相关的设置&#xff0c;一无所获。但是苍天犹怜&#xff0c;经过我一上午的探索&#xff0c;终于在一个犄角旮旯里面找到了这个…

【可实战】被测系统业务架构、系统架构、技术架构、数据流、业务逻辑分析

一、为什么要学习 更深的理解业务逻辑&#xff08;公司是做什么的&#xff1f;它最重要的商务决策是什么&#xff1f;它里面的数据流是怎么做的&#xff1f;有哪些业务场景&#xff1f;考验你对这家公司、对所负责业务的熟悉程度。公司背后服务器用什么软件搭建的&#xff1f;…

系统找不到xinput1_3.dll怎么办?试试这五种解决方法轻松搞定

在计算机系统运行过程中&#xff0c;当我们遭遇“找不到xinput1_3.dll”这一错误提示时&#xff0c;实际上正面临一个软件兼容性、系统组件缺失以及游戏或应用程序无法正常启动的关键问题。深入探究这一现象&#xff0c;我们会发现它可能引发一系列连带问题&#xff0c;例如某些…

蓝桥杯Learning

Part 1 递归和递推 1. 简单斐波那契数列 # 这里使用了数组进行保存 n int(input())st [0]*(47) # 注意这个地方&#xff0c;需要将数组空间设置的大一些&#xff0c;否则会数组越界 st[1] 0 st[2] 1def dfs(u):if u 1:print(st[1],end" ")if u 2:print(str(st[…

黑马程序员——接口测试——day03

目录&#xff1a; Potman断言 Postman断言简介Postman常用断言 断言响应状态码断言包含某字符串断言JSON数据Postman断言工作原理Postman关联 简介实现步骤核心代码创建环境案例1案例2Postman参数化 简介数据文件简介编写数据文件 CSV文件JSON文件导入数据文件到postman读取数…

数据安全治理实践路线(下)

数据安全运营阶段通过不断适配业务环境和风险管理需求&#xff0c;持续优化安全策略措施&#xff0c;强化整个数据安全治理体系的有效运转。 数据安全运营 1. 风险防范 数据安全治理的目标之一是降低数据安全风险&#xff0c;因此建立有效的风险防范手段&#xff0c;对于预防…

3、函数定义,函数调用,this指向总结,闭包

一、函数的定义方式 1、函数声明 function demo1() {var num 12var result Math.pow(num,2)//指数函数return result }2、函数表达式 var demo2 function (x,y) { //内置对象arguments前面的两个参数 是 x,yvar sum arguments[0] arguments[1]console.log(sum) }3、构…

web组态插件

插件演示地址&#xff1a;http://www.byzt.net 关于组态软件&#xff0c;首先要从组态的概念开始说起。 什么是组态 组态&#xff08;Configure&#xff09;的概念来自于20世纪70年代中期出现的第一代集散控制系统&#xff08;Distributed Control System&#xff09;&#xf…

docker build基本命令

背景 我们经常会构建属于我们应用自己的镜像&#xff0c;这种情况下编写dockerfile文件不可避免&#xff0c;本文就来看一下常用的dockerfile的指令 常用的dockerfile的指令 首先我们看一下docker build的执行过程 ENV指令&#xff1a; env指令用于设置shell的环境变量&am…

渗透测试—信息收集

渗透测试—信息收集 1. 收集域名信息1.1. 域名注册信息1.2. SEO信息收集1.3. 子域名收集1.3.1. 在线子域名收集1.3.2. 子域名收集工具 1.4. 域名备案信息1.5. ICP备案号查询1.6. SSL证书查询 2. 收集真实IP2.1. 超级ping2.2. Ping2.3. CDN绕过 3. 收集旁站或C段IP3.1. 旁站或C段…

一款非常专业的图形设计工具CorelDRAW2024中文破解版

CorelDRAW2024&#xff08;简称CDR2024&#xff09;是一款非常专业的图形设计工具&#xff0c;该产品推出了全新的2023版本&#xff0c;在功能和体验上更进一步&#xff0c;最新的填充和透明设备功能可以完全控制任何类型的纹理&#xff0c;适用于网络摄影、印刷项目、艺术、排…

【析】装卸一体化车辆路径问题的自适应并行遗传算法

0 引言 国内外有关 &#xff36;&#xff32;&#xff30;&#xff33;&#xff30;&#xff24;的文献较多&#xff0c;求解目标多以最小化车辆行驶距离为主&#xff0c;但现实中可能存在由租赁费用产生的单次派出成本&#xff0c;需要综合考 虑单次派车成本和配送路径成本。…

JetBrains系列工具,配置PlantUML绘图

PlantUML是一个很强大的绘图工具&#xff0c;各种图都可以绘制&#xff0c;具体的可以去官网看看&#xff0c;或者百度。 PlantUML简述 https://plantuml.com/zh/ PlantUML语言参考指引 https://plantuml.com/zh/guide PlantUML语言是依赖Graphviz进行解析的。Graphviz是开源…