我想将输入中的所有数字添加到coollection并对其进行排序。
我有这样的输入文件:
12i -+3456i
78,i910
11
i-12i
13.14r
15.r16r
i17.18
-+19.20
+r21.22
+23.242526r
+-27.28r
-29.30r
-.313233r
r-0.343536rr
r.34r
3536.r
r+37.38
Liczba -0.1234 jest mniejsza niz liczba .2 i wieksza niz liczba -1;
i123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789i
当然还有整数、双精度、大整数等。我想将它们放入 Collection 和排序中。如果我通过此输入进行 3 次传递,这并不难:
1. Create regex for integers and filter the input add those integers into collection
2. Create regex for doubles and filter the input add those doubles into collection
3. Create regex for bigIntegers and filter the input add those bigIntegers into collection
4.Sort this collection of BigDecimals.
但这似乎很愚蠢。有没有办法通过输入一次将所有这些数字放入集合中?使用正则表达式。
编辑:
12,12 == 12.12 --> double
12i --> i does not count this is integer 12
EDIT2:正确的输出顺序
-29.30
-27.28
-12
-1
-0.343536
-0.313233
-0.1234
0.2
0.34
11
12
13.14
15
16
17.18
19.20
21.22
23.242526
37.38
78
910
3456
3536
123456789123456789123456789123456789123456789123456789123456789123456789123456789123456789