标签: numbers

如何在Java中比较两个数字?

可能重复:
比较两个通用数字的值

我想比较两个任意的Number实例来找出哪个更大.如您所知,这些可能是整数,长整数或双数,但也可能是BigIntegers或BigDecimals.那么该怎么办?

  1. Number没有实现Comparable.
  2. 无法使用,doubleValue()因为BigDecimals或BigIntegers可能会丢失精度.

我真的必须进行实例测试和投射吗?这里必须有一些库,做到这一点.但我已经检查过Apache Commons和Guava没有运气.

编辑1:评论指出了这一点:比较两个通用数字的值.它有一个解决方案,使用将所有内容转换为BigDecimal toString().真的没有更好的方法吗?

编辑2:我刚发布了自己的版本作为另一个问题的答案.它应该比公认的答案更有效和更强大.

java compare numbers

20
推荐指数
2
解决办法
3万
查看次数

如何将 INumber<T> 与 int 相乘?

z * 2我应该如何在最后一行实现 int ( ) 的乘法?

public static TResult Test<TResult>() where TResult : INumber<TResult>
{
    TResult x = TResult.AdditiveIdentity;
    TResult y = TResult.MultiplicativeIdentity;
    TResult z = x * y;
    TResult z2 = z * 2; // <--- this gives the CS0019 error "The operator * cannot be applied to operands of type 'TResult' and 'int'
    return z2;
}
Run Code Online (Sandbox Code Playgroud)

--- 建议的解决方案是添加一个接口,但它打破了这一点: IMultiplyOperators<TResult, int, TResult>

public static void Tester()
{
    Test<decimal>(); // CS0315 Tye type decimal cannot be used as …
Run Code Online (Sandbox Code Playgroud)

c# math numbers .net-7.0 .net-generic-math

20
推荐指数
3
解决办法
2006
查看次数

检查变量是否有数字php

我想检查一个变量是否有一个数字,我只是想知道是否有一个我不在乎它是否有任何其他内容如下:

"abc" - false
"!./#()" - false
"!./#()abc" - false
"123" - true
"abc123" - true
"!./#()123" - true
"abc !./#() 123" -true
Run Code Online (Sandbox Code Playgroud)

如果您想知道所有数字,但是如果它只有一个,那么有很简单的方法可以做到这一点.谢谢你的帮助.

php variables numbers

19
推荐指数
3
解决办法
3万
查看次数

用Unix排序科学数字排序

我尝试用Unix排序对这些数字进行排序,但它似乎不起作用:

    2e-13
    1e-91
    2e-13
    1e-104
    3e-19
    9e-99
Run Code Online (Sandbox Code Playgroud)

这是我的命令:

sort -nr file.txt
Run Code Online (Sandbox Code Playgroud)

什么是正确的方法呢?

unix linux sorting numbers

19
推荐指数
3
解决办法
2万
查看次数

最大文件号可以同时上传php

我使用标签上传多个文件与PHP.我注意到,如果我选择超过20个文件,php只上传前20个文件.有没有办法扩展这个限制?

php upload numbers file

19
推荐指数
1
解决办法
2万
查看次数

Objective-C:仅限数字文本字段?

可能重复:
Iphone UITextField只有整数

我想放置一个只接受数字的文本字段(0-9,甚至不需要小数),但即使使用"数字键盘"输入选项,我仍然会得到一个带有各种符号的键盘.是否有更好的控制,是否有更好的控制我正在做什么,或者我只需要手动验证输入?

validation numbers objective-c uitextfield ipad

19
推荐指数
3
解决办法
3万
查看次数

将英文数字转换为阿拉伯语的最佳方式

可能重复:
将字符串转换为java中的另一个语言环境

我想把java String包含英文数字的阿拉伯语转换为阿拉伯语,所以我做了这个

int  arabic_zero_unicode= 1632;
String str = "13240453";
StringBuilder builder = new StringBuilder();

for(int i =0; i < str.length(); ++i ) {
    builder.append((char)((int)str.charAt(i) - 48+arabic_zero_unicode));
}

System.out.println("Number in English : "+str);
System.out.println("Number In Arabic : "+builder.toString() );
Run Code Online (Sandbox Code Playgroud)

输出

Number in English : 13240453
Number In Arabic : ????????
Run Code Online (Sandbox Code Playgroud)

还有另一种更有效的方法吗?

java numbers

19
推荐指数
1
解决办法
1万
查看次数

替换R中数据框列中的数字?

可能重复:
替换R数据帧中因子列的内容

我有data.frame

df1<-data.frame("Sp1"=1:6,"Sp2"=7:12,"Sp3"=13:18)
rownames(df1)=c("A","B","C","D","E","F")

df1
  Sp1 Sp2 Sp3
A   1   7  13
B   2   8  14
C   3   9  15
D   4  10  16
E   5  11  17
F   6  12  18
Run Code Online (Sandbox Code Playgroud)

我想用df1 $ Sp2列中的数字8的每个条目替换为数字800.我试过:

test<-replace(df1$Sp2,df1[800,"Sp2"],5)
Run Code Online (Sandbox Code Playgroud)

replace numbers r dataframe

19
推荐指数
1
解决办法
6万
查看次数

从范围(0:10 ^ 12)生成整数随机数

我想生成介于0到10 ^ 12之间的10000个整数随机数.通常,代码看起来像这样:

x <- sample(0:1000000000000,10000,replace=T)
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误消息:

Error in 0:1000000000000 : result would be too long a vector
Run Code Online (Sandbox Code Playgroud)

是否有一个更有效的内存方法,不必将10 ^ 12个整数放在一个向量中,只是为了获得大小为10000的样本?如果没有,有没有办法增加向量的最大大小?我正在使用具有12GB可用RAM的64位操作系统.

random numbers r range

19
推荐指数
2
解决办法
5万
查看次数

R - 生成一系列数字

我正在尝试创建6个案例的序列,但间隔为144个案例.

比如这个

c(1:6, 144:149, 288:293)

1   2   3   4   5   6 144 145 146 147 148 149 288 289 290 291 292 293
Run Code Online (Sandbox Code Playgroud)

我怎么能自动生成这样的序列

seq 
Run Code Online (Sandbox Code Playgroud)

还是与其他功能?

numbers r sequence

19
推荐指数
3
解决办法
2万
查看次数