From a70919b4f7baab856125f36e5bd41f5ee81be680 Mon Sep 17 00:00:00 2001 From: huliguo <2023611923@qq.com> Date: 星期二, 13 五月 2025 09:41:35 +0800 Subject: [PATCH] 修改年份切换字段不为必填 --- src/test/java/DatabaseConnectionTest.java | 39 +++++++++++++++++++++++++++++++++++++++ 1 files changed, 39 insertions(+), 0 deletions(-) diff --git a/src/test/java/DatabaseConnectionTest.java b/src/test/java/DatabaseConnectionTest.java new file mode 100644 index 0000000..8728961 --- /dev/null +++ b/src/test/java/DatabaseConnectionTest.java @@ -0,0 +1,39 @@ +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.text.DecimalFormat; + +public class DatabaseConnectionTest { + public static void main(String[] args) { + /*String url = "jdbc:mysql://localhost:3306/canlian?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8"; + String username = "root"; + String password = "123456"; + + try (Connection connection = DriverManager.getConnection(url, username, password)) { + System.out.println("数据库连接成功!"); + } catch (SQLException e) { + System.out.println("数据库连接失败:" + e.getMessage()); + }*/ + String s = calcRate(5, 4); + System.out.println(s); + } + public static String calcRate(Integer currentValue, Integer previousValue) { + //去年的数据为0的情况 + if (previousValue == 0){ + return currentValue == 0 ? "同比持平" : "无同比数据"; + } + // 计算变化率 + double changeRate = (currentValue - previousValue) * 100.0 / previousValue; + // 格式化输出(保留两位小数,带正负号) + DecimalFormat df = new DecimalFormat("0.00"); + String absoluteValue = df.format(Math.abs(changeRate)); + if (changeRate > 0) { + return "同比增加" + absoluteValue + "%"; + } else if (changeRate < 0) { + return "同比减少" + absoluteValue + "%"; + } else { + return "同比持平"; + } + + } +} \ No newline at end of file -- Gitblit v1.7.1