JAVA计算表达式
需求:
1、例如if(score>=85){return 1;}else if(score>=70){return 2;}else if(score>=60){return 3;}else{return 4;}有这一串字符串,要执行这个字符串,
如果score为86分,则能得到1;如果score为30分,则能得到4;/2、
2、或者知道有score=A*B*C这一个字符串,计算出score,其中A/B/C在程序中拿到。
搜资料发现,这一块技术点叫,简单高效的轻量级Java表达式引擎:Aviator
3、pom.xml文件追加如下依赖:
<dependency><groupId>com.googlecode.aviator</groupId><artifactId>aviator</artifactId><version>5.3.0</version></dependency>
4、在java中编写如下代码:
package com.hmblogs.backend.util;import com.alibaba.fastjson.JSONObject;
import com.googlecode.aviator.AviatorEvaluator;
import org.junit.Test;public class CalculateUtil {@Testpublic void main(){String expression2 = "score=A*B*C";JSONObject parseObject = new JSONObject();parseObject.put("A", 3);parseObject.put("B", 3);parseObject.put("C", 1);Object execute2 = AviatorEvaluator.execute(expression2, parseObject);System.out.println("结果为:"+execute2);}
}
5、执行该方法,结果为:9

相关文章:
JAVA计算表达式
需求: 1、例如if(score>85){return 1;}else if(score>70){return 2;}else if(score>60){return 3;}else{return 4;}有这一串字符串,要执行这个字符串, 如果score为86分,则能得到1;如果score为30分ÿ…...
【复现】宏景HCM 任意文件读取漏洞_63
目录 一.概述 二 .漏洞影响 三.漏洞复现 1. 漏洞一: 四.修复建议: 五. 搜索语法: 六.免责声明 一.概述 宏景HCM 将人才标签技术应用于员工招聘、人才选拔等环节,通过多维度的标签体系,形成不同专业序列的人才画…...
Linux:kubernetes(k8s)搭建mater节点(kubeadm,kubectl,kubelet)(2)
安装k8有多种方式如: minikube kubeadm 二进制安装 命令行工具 我这里就使用kubeadm进行安装 环境 3台centos7 master ip :192.168.113.120 2G运存 2内核 node1 ip :192.168.113.121 2G运存 2内核 node2 ip :192.168.1…...
Web应用安全威胁与防护措施
本文已收录至《全国计算机等级考试——信息 安全技术》专栏 由于极其容易出现漏洞、并引发安全事故,因此数据隐私的保护是目前绝大多数企业不可绕过的运维环节。不过,许多中小型企业往往会错误地认为只有大型企业才会成为黑客的目标。而实际统计数字却截…...
MySQL相关知识汇总
MySQL是一个广泛使用的开源关系型数据库管理系统,它以其高性能、稳定性和易用性而备受开发者喜爱。在软件开发领域,无论是大型项目还是小型应用,MySQL都扮演着重要的角色。本文将对MySQL的一些关键知识点进行汇总,帮助读者更好地了…...
【旧文搬运】为你的 Laravel 应用添加一个基于 Swoole 的 WebSocket 服务
做了一个基于 Swoole 的 WebSocket 扩展包,可以用来做实时状态推送,或者自定义消息处理实现 im,有需要的可以看看: [giorgio-socket] 使用方法 安装 安装扩展包 composer require wu/giorgio-socket发布配置文件 php artisan vendor:pu…...
vue项目从后端下载文件显示进度条或者loading
//API接口 export const exportDownload (params?: Object, peCallback?: Function) > {return new Promise((resolve, reject) > {axios({method: get,url: ,headers: {access_token: ${getToken()},},responseType: blob,params,onDownloadProgress: (pe) > {peC…...
[技巧]Arcgis之图斑四至点批量计算
前言 上一篇介绍了arcgis之图斑四至范围计算,这里介绍的图斑四至点的计算及获取,两者之间还是有差异的。 [技巧]Arcgis之图斑四至范围计算 这里说的四至点指的是图斑最东、最西、最南、最北的四个地理位置点坐标,如下图: 四至点…...
【java】20:枚举
枚举的二种实现方式 1) 自定义类实现枚举 2) 使用 enum 关键字实现枚举 自定义实现枚举: 1.不需要提供setXxx方法,因为枚举对象值通常为只读. 2.对枚举对象/属性使用final static共同修饰,实现底层优化. 3.枚举对象名通常使用全部大写&…...
★【二叉搜索树(中序遍历特性)】【 ★递归+双指针】Leetcode 98. 验证二叉搜索树
★【二叉搜索树(中序遍历特性)】【 ★递归双指针】Leetcode 98. 验证二叉搜索树 二叉搜索树 98. 验证二叉搜索树解法1 笨 中序递归遍历为一个数组 然后判断数组是不是升序排列就可以★解法2 不使用数组 递归法 ---------------🎈Ἰ…...
打造无缝滚动体验:JavaScript中的scrollIntoView()方法实战指南
在现代Web开发中,提升用户体验是至关重要的。通过JavaScript的scrollIntoView()方法,我们可以为用户创造出流畅而令人愉悦的滚动体验。本文将深入研究scrollIntoView()的强大功能,并结合实例演示如何在项目中巧妙应用,以打造出无缝…...
实战:如何将Oracle单实例数据库转换成Oracle RAC数据库
导读 本文介绍如何将Oracle单实例数据库转换成Oracle RAC数据库 环境说明: 数据库节点2上有个单实例数据库zlxdb2,现在要将zlxdb2转换成RAC数据库,RAC数据库的两个实例分别是lzydb1和lzydb2。 以下是详细的操作步骤: 1、查看zlxdb…...
基于华为atlas的分类模型实战
分类模型选用基于imagenet训练的MobileNetV3模型,分类类别为1000类。 pytorch模型导出为onnx: 修改mobilenetv3.py中网络结构,模型选用MobileNetV3_Small模型,网络输出节点增加softmax层,将原始的return self.linear4…...
编程语言:SQL Server数据库使用教程,SQL Server增删改查语句
「作者主页」:士别三日wyx 「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」:对网络安全感兴趣的小伙伴可以关注专栏《网络安全自学教程》 SQL Server是微软提供的一种关系型数据库,…...
【tableau学习笔记】tableau无法连接数据源
【tableau学习笔记】tableau无法连接数据源 背景: 学校讲到Tableau,兴奋下载Kaggle Excel,一看后缀CSV,导入Tableau发现报错“tableau无法连接数据源”,自作聪明改为后缀XLSX,bug依旧。 省流:…...
cetos7 Docker 安装 gitlab
一、gitlab 简单介绍和安装要求 官方文档:https://docs.gitlab.cn/jh/install/docker.html 1.1、gitlab 介绍 gitLab 是一个用于代码仓库管理系统的开源项目,使用git作为代码管理工具,并在此基础上搭建起来的Web服务平台,通过该平…...
无极低码:无极低码部署版操作指南
无极低码 :https://wheart.cn 无极低码是一个面向开发者的工具,旨在为开发者、创业者或研发企业,提供快速,高效,标准化,可定制,私有化部署的平台,在兼顾开发速度的同时,兼…...
C语言实现日本某地发生了一件谋杀案
题目 猜凶手 题目内容: 日本某地发生了一件谋杀案,警察通过排查确定杀人凶手必为4个嫌疑犯的一个。 以下为4个嫌疑犯的供词: A说:不是我。 B说:是C。 C说:是D。 D说:C在胡说 已知3个人说了真话&…...
【C++】const成员
个人主页 : zxctscl 如有转载请先通知 文章目录 1. 前言2. const成员3. 取地址及const取地址操作符重载 1. 前言 在之前已经已经分享过了关于 【C】类和对象之常引用与运算符重载,这次分享的有关const的内容,话不多说,正文开始。…...
利用小蜜蜂AI智能问答ChatGPT+AI高清绘图生成图文故事案例
利用小蜜蜂AI智能问答ChatGPTAI高清绘图生成图文故事案例 这段时间利用小蜜蜂AI网站做了一些编程、绘图以及数据分析方面的案例。再过几个月,我的大孙子就要出生了。我要用小蜜蜂AI智能问答和AI高清绘图为大孙子生成一个1-9的数字图文故事。 小蜜蜂AI网站可以扫如…...
7个实用技巧掌握MySQL连接查询:INNER JOIN、LEFT JOIN、RIGHT JOIN实战解析
7个实用技巧掌握MySQL连接查询:INNER JOIN、LEFT JOIN、RIGHT JOIN实战解析 【免费下载链接】mysql-tutorial MySQL入门教程(MySQL tutorial book) 项目地址: https://gitcode.com/gh_mirrors/mys/mysql-tutorial MySQL连接查询是数据…...
手机扩大屏定制厂家:菲涅尔高清模压技术护航跨境出海
在跨境电商快速发展的如今,手机屏幕放大器作为移动配件领域的细分品类,正在成为全球卖家关注的焦点。然而,货源不稳定、产品同质化、知识产权风险、镜片清晰度不佳等行业痛点,始终困扰着跨境电商从业者。如何找到一家技术过硬、供…...
解放你的无人机!DankDroneDownloader:轻松掌控DJI固件的终极指南
解放你的无人机!DankDroneDownloader:轻松掌控DJI固件的终极指南 【免费下载链接】DankDroneDownloader A Custom Firmware Download Tool for DJI Drones Written in C# 项目地址: https://gitcode.com/gh_mirrors/da/DankDroneDownloader 你知道…...
打印机驱动怎么下载?靠谱渠道推荐,轻松解决安装难题
在日常家用、办公打印场景中,打印机驱动失效、安装失败、设备无法识别是最常见的问题。绝大多数用户的核心困扰,就是不清楚打印机驱动怎么下载,盲目在网络上搜索后,要么下载到不兼容的驱动,要么碰到捆绑软件、恶意程序…...
ARM 架构 JuiceFS 性能优化:基于 MLPerf 的实践与调优阑
Qt是一个跨平台C图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本笔记将重点介绍QSpinBox数值微调组件的常用方法及灵活应用。…...
MusePublic Art Studio效果展示:大留白界面下SDXL生成的细腻光影与构图
MusePublic Art Studio效果展示:大留白界面下SDXL生成的细腻光影与构图 1. 创作工具新体验 MusePublic Art Studio 彻底改变了AI图像创作的交互方式。这个工具最吸引人的地方在于——你不需要懂任何代码,也不需要配置复杂的环境,就像打开一…...
粉紫系超人气月兔铃仙救
1 安装与初始化 # 全局安装 OpenSpec npm install -g fission-ai/openspeclatest # 在项目目录下初始化 cd /path/to/your-project openspec init 初始化时,OpenSpec 会提示你选择使用的 AI 工具(Claude Code、Cursor、Trae、Qoder 等)。 3 O…...
AI开发-python-langchain框架(--并行流程 )惫
如果有多个供应商,你也可以使用 [[CC-Switch]] 来可视化管理这些API key,以及claude code 的skills。 # 多平台安装指令 curl -fsSL https://claude.ai/install.sh | bash ## Claude Code 配置 GLM Coding Plan curl -O "https://cdn.bigmodel.cn/i…...
如何用Win11Debloat高效解决Windows系统臃肿问题:极简优化指南
如何用Win11Debloat高效解决Windows系统臃肿问题:极简优化指南 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutte…...
运维系列【仅供参考】:Centos之nohup 后台运行程序
Centos之nohup 后台运行程序 Centos之nohup 后台运行程序 摘要 nohup命令: 2>&1的问题 参考以下文章 Centos之nohup 后台运行程序-yellowcong 2>&1的问题 不输出文件 输出文件 参考以下文章 nohup /dev/null 2>&1 含义详解 摘要 正文 Centos之nohup 后台…...
