在 Java 中,我可以使用 DecimalFormat 在数字之间输入破折号 (-) 吗?
Posted
技术标签:
【中文标题】在 Java 中,我可以使用 DecimalFormat 在数字之间输入破折号 (-) 吗?【英文标题】:In Java, can I use DecimalFormat to enter a dash (-) between numbers? 【发布时间】:2011-09-17 03:14:11 【问题描述】:我可以使用DecimalFormat
在数字之间输入破折号 (-) 吗?我一直在尝试这样做,但是当我运行程序时,破折号会出现在数字的末尾,例如:129329-
我希望它看起来像这样:129-329
【问题讨论】:
如果您包含将破折号放在末尾的代码会很有帮助。 【参考方案1】:您可以这样做。
import java.text.DecimalFormat;
import java.text.DecimalFormatSymbols;
public class NewClass
public static void main(String[] args)
DecimalFormatSymbols phoneNumberSymbols = new DecimalFormatSymbols();
// Use space not comma to thousands: 10 000 not 10,000.
phoneNumberSymbols.setGroupingSeparator('-');
DecimalFormat phoneNumberFormat = new DecimalFormat("####,###,###", phoneNumberSymbols);
System.out.println("Some mobile number:" + phoneNumberFormat.format(567884968L));
【讨论】:
【参考方案2】:如果你的电话号码是字符串,解决方法如下:
import java.text.DecimalFormat;
import java.text.DecimalFormatSymbols;
public class NewClass
public static void main(String[] args)
long lg_tel = Long.parseLong(example.getString("tel")); // String to Long
DecimalFormatSymbols phoneNumberSymbols = new DecimalFormatSymbols();
// Use space not comma to thousands: 10 000 not 10,000.
phoneNumberSymbols.setGroupingSeparator('-');
DecimalFormat phoneNumberFormat = new DecimalFormat("####,###,###", phoneNumberSymbols);
(...)
tv.setText(phoneNumberFormat.format(lg_tel).toString());
【讨论】:
以上是关于在 Java 中,我可以使用 DecimalFormat 在数字之间输入破折号 (-) 吗?的主要内容,如果未能解决你的问题,请参考以下文章
在 Java 中,我可以使用 DecimalFormat 在数字之间输入破折号 (-) 吗?
我可以在 Java 中使用 resultset.getBoolean 在 SQL 中获取 Tinyint
我可以在 python 中访问 c++ 或 Java 函数吗