-1

我有一个字符串:

String x = "10";

现在我想.在数字之间添加并像这样打印

1.0

我怎样才能做到这一点?

4

5 回答 5

11

您可以将字符串拆分为第一个字符和字符串的其余部分,然后'.'在其间插入一个点,如下所示:

String res = x.substring(0,1)+"."+x.substring(1);
//           ^^^^^^^^^^^^^^^^     ^^^^^^^^^^^^^^
//            the first digit     the rest of the string

您也可以使用replaceAll在较长的字符串上执行此操作,如下所示:

String orig = "19,28,37,46";
System.out.println(orig.replaceAll("(\\d)(\\d)", "$1.$2"));

打印

1.9,2.8,3.7,4.6
于 2012-08-02T21:09:41.220 回答
3

使用DecimalFormat类更好地解耦值及其表示。

于 2012-08-02T21:09:54.753 回答
1

如果字符串始终是 2 位数字:

String result = x.charAt(0) + "." + x.charAt(1);
于 2012-08-02T21:09:06.803 回答
0

此函数可以接受所有数字并返回一个点分字符串,只需轻轻一点,它就可以接受许多其他类型的数据,并返回带有选项的数据

    fun getStringWithDot(nums: Int): String {
var str = ""
val istr = nums.toString()
for (ch in istr.indices){
    if (ch == istr.length-1){
        str += istr.substring(0,1)
    }else{
        str += istr.substring(ch,ch+1) + "."
    }

}
return str

}

于 2022-02-17T14:17:17.780 回答
-1
public static void main(String args[])

{
Scanner S=new Scanner(System.in);

int arr[];

int number;

number=S.nextInt();

int length=Integer.toString(number).length();

arr=new int[length];

char arr2[];

arr2=new char[length];

int count=0;

char arr3[];

arr3=new char[length];

String Q=Integer.toString(number);

for(int i=0;i<arr3.length;i++)

{

    System.out.print(Q.charAt(i)+".");

}

}
于 2021-11-01T11:03:35.957 回答