gpt4 book ai didi

Java格式化字符串以删除变量前面的 "0"

转载 作者:行者123 更新时间:2023-12-01 12:35:39 26 4
gpt4 key购买 nike

基本上,我在尝试格式化从数据库检索的字符串时遇到了一些问题。这是我的嵌套 for 循环:

for (int count = 0; count < monthStr.length; count++) {
for (int i = 0; i < trans_list.size(); i++) {
if (count == Integer.parseInt(trans_list.get(i).getDate())) {
expensesSeries.add(x[count], trans_list.get(i)
.getAmount());
}
else{
expensesSeries.add(x[count], 0);
}
}
}

基本上,getDate() 将返回以下格式的字符串:01,02,03,04 等等,直到 12。我想做的是将 1-12 的计数与我检索到的字符串进行比较。有没有办法去掉字符串中01,02前面的0?

提前致谢。

编辑

    boolean setZero = true;
String[] monthStr = { "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul",
"Aug", "Sep", "Oct", "Nov", "Dec" };

// Creating an XYSeries for Expenses
XYSeries expensesSeries = new XYSeries("Expenses");
for (int count = 1; count < 13; count++) {
for (int i = 0; i < trans_list.size(); i++) {
if (count == Integer.parseInt(trans_list.get(i).getDate())) {
setZero = false;
expensesSeries.add(count, trans_list.get(i)
.getAmount());
}
if(setZero)
{
expensesSeries.add(count, 0);
setZero = true;
}
}
}

for (int j = 0; j < monthStr.length; j++) {
multiRenderer.addXTextLabel(j+1, monthStr[j]);
}
}

enter image description here

最佳答案

Java格式化字符串以删除变量前面的“0”

ParseInt 应该能够从以 0 开头的 String 中获取 int(只要它位于 int 值之前),但是如果您需要它用于此代码中未显示的其他目的,只需使用起始字符 ^

执行正则表达式 replaceAll()
string.replaceAll("^0","");

对于多个 0,也使用 *

string.replaceAll("^0*","");

此处提到的具体问题

为什么要嵌套循环?看起来您希望通过 expensesSeriestrans_list 的内容添加为点,在没有数据的地方添加零。只需使用数组跟踪总数即可:-

 int[] monthlyTotals = new int[12];
for (int i=0; i<trans_list.size(); i++)
{
//Add item at index i trans_list at location i in chart
int chartXIndex = Integer.parseInt(trans_list.get(i).getdate());
monthlyTotals[chartXIndex] += trans_list.get(i).getAmount();
}

您现在有一个数组来表示您想要在图表上显示的内容,因此只需循环将它们添加到图表中

for (int i=0; i<monthlyTotals.length; i++)
{
expensesSeries.add(i, monthlyTotals[i]);
multiRenderer.addXTextLabel(i+1, monthStr[i]); //combine your last loop as well
}

嵌套循环可能会令人困惑,请尽可能避免。

关于Java格式化字符串以删除变量前面的 "0",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25624186/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com