From 0b2853b6009f695b397c9b3503cbe1ca89350998 Mon Sep 17 00:00:00 2001 From: czx <28353131@qq.com> Date: Mon, 1 Feb 2021 17:03:17 +0800 Subject: [PATCH] =?UTF-8?q?=E6=89=93=E5=8D=B0=E6=95=B0=E5=80=BC=E8=BD=AC?= =?UTF-8?q?=E6=8D=A2=E5=B7=A5=E5=85=B7=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../system/fantang/common/NumberToList.java | 120 +++++++++++------- 1 file changed, 72 insertions(+), 48 deletions(-) diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/fantang/common/NumberToList.java b/ruoyi-system/src/main/java/com/ruoyi/system/fantang/common/NumberToList.java index be6d1a263..fb8c48c99 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/fantang/common/NumberToList.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/fantang/common/NumberToList.java @@ -13,6 +13,7 @@ public class NumberToList { } long ret = (long) (number*100); boolean flag = false; + boolean clear = false; for (String s : str) { switch (s) { @@ -24,99 +25,122 @@ public class NumberToList { break; case "jiao": if (flag){ - if (ret < 100) { - map.put(s + level, "¥"); - flag = true; - } else { + if (clear) { map.put(s + level, " "); + } else { + map.put(s + level, "¥"); + clear = true; } } else { - map.put(s + level, String.valueOf((ret/10)%10)); + if (ret < 100) { + flag = true; + } + map.put(s + level, String.valueOf((ret / 10) % 10)); } break; case "yuan": - if (flag) { - if (ret < 1000) { - map.put(s + level, "¥"); - flag = true; - } else { + if (flag){ + if (clear) { map.put(s + level, " "); + } else { + map.put(s + level, "¥"); + clear = true; } } else { - map.put(s + level, String.valueOf((ret/100)%10)); + if (ret < 1000) { + flag = true; + } + map.put(s + level, String.valueOf((ret / 100) % 10)); } break; case "shi": - if (flag) { - if (ret < 10000) { - map.put(s + level, "¥"); - flag = true; - } else { + if (flag){ + if (clear) { map.put(s + level, " "); - flag = true; + } else { + map.put(s + level, "¥"); + clear = true; } } else { - map.put(s + level, String.valueOf((ret/1000)%10)); + if (ret < 10000) { + flag = true; + } + map.put(s + level, String.valueOf((ret / 1000) % 10)); } break; case "bai": - if (flag) { - if (ret < 100000) { - map.put(s + level, "¥"); - flag = true; - } else { + if (flag){ + if (clear) { map.put(s + level, " "); + } else { + map.put(s + level, "¥"); + clear = true; } } else { - map.put(s + level, String.valueOf((ret/10000)%10)); + if (ret < 100000) { + flag = true; + } + map.put(s + level, String.valueOf((ret / 10000) % 10)); } break; case "qian": - if (flag) { - if (ret < 1000000) { - map.put(s + level, "¥"); - flag = true; - } else { + if (flag){ + if (clear) { map.put(s + level, " "); + } else { + map.put(s + level, "¥"); + clear = true; } } else { - map.put(s + level, String.valueOf((ret/100000)%10)); + if (ret < 1000000) { + flag = true; + } + map.put(s + level, String.valueOf((ret / 100000) % 10)); } break; case "wan": - if (flag) { - if (ret < 10000000) { - map.put(s + level, "¥"); - flag = true; - } else { + if (flag){ + if (clear) { map.put(s + level, " "); + } else { + map.put(s + level, "¥"); + clear = true; } } else { - map.put(s +level, String.valueOf((ret/1000000)%10)); + if (ret < 10000000) { + flag = true; + } + map.put(s + level, String.valueOf((ret / 1000000) % 10)); } break; case "shiwan": - if (flag) { - if (ret < 100000000) { - map.put(s + level, "¥"); - flag = true; - } else { + if (flag){ + if (clear) { map.put(s + level, " "); + } else { + map.put(s + level, "¥"); + clear = true; } } else { - map.put(s + level, String.valueOf((ret/10000000)%10)); + if (ret < 100000000) { + flag = true; + } + map.put(s + level, String.valueOf((ret / 10000000) % 10)); } break; case "baiwan": - if (flag) { - if (ret < 1000000000) { - map.put(s + level, "¥"); - flag = true; - } else { + if (flag){ + if (clear) { map.put(s + level, " "); + } else { + map.put(s + level, "¥"); + clear = true; } } else { - map.put(s + level, String.valueOf((ret/100000000)%10)); + if (ret < 1000000000) { + flag = true; + } + map.put(s + level, String.valueOf((ret / 100000000) % 10)); } break; default: