如何在字符串中的某个位置插入字符?

2022-08-31 06:49:28

我正在输入一个6位数的值。我想用小数点(.)从末尾的2位数字处显示它。我想使用一个,但建议用于更好的显示输出(而不是将)。因此,我需要一个函数,它将采用as参数并返回格式正确的格式,从末尾开始用小数点2位数字。intStringintfloatString1234.51234.50intString

说:

int j= 123456 
Integer.toString(j); 

//processing...

//output : 1234.56

答案 1

正如注释中提到的,StringBuilder可能比使用StringBuffer更快。如 Java 文档中提到的:

此类提供与 StringBuffer 兼容的 API,但不保证同步。此类旨在用作 StringBuffer 的直接替代项,用于字符串缓冲区由单个线程使用的位置(通常如此)。在可能的情况下,建议优先使用此类,因为它在大多数实现下会更快。

用法:

String str = Integer.toString(j);
str = new StringBuilder(str).insert(str.length()-2, ".").toString();

或者,如果您需要同步,请使用具有类似用法的StringBuffer

String str = Integer.toString(j);
str = new StringBuffer(str).insert(str.length()-2, ".").toString();

答案 2
int j = 123456;
String x = Integer.toString(j);
x = x.substring(0, 4) + "." + x.substring(4, x.length());