Java整数(java.lang.Integer)数组除法等数学运算
Java Integer (java.lang.Integer) Array division and other math operations
我想划分一个java.lang.Integer数组并将结果保存到一个java.lang.Double数组中。我在互联网上搜索并找不到有用的信息(大多数关于 java.lang.Integer class 的搜索导致原始类型 int 操作,如 Division of integers in Java, and this )。
我的以下代码不起作用
Integer[] FixedDays = {1, 2, 7, 14, 30, 60, 90, 180, 548, 730, 1095, 1460, 1825};
Double[] Ts = FixedDays / 365.0;
关于 java.lang.Integer(或更一般地,数字 class 和其他基本数学运算)是否有快速除法的方法?有没有支持这种数字数组运算的数学包?
您可以使用 Java Streams 非常简洁地做到这一点:
Arrays.stream(FixedDays).map(i -> i / 365.0).toArray();
或
double[] doubles = Arrays.stream(FixedDays)
.map(i -> i / 365.0)
.mapToDouble(Double::doubleValue)
.toArray();
或
Double[] Ts = Arrays.stream(FixedDays)
.map(i -> i / 365.0)
.toArray(Double[]::new);
你必须遍历每个元素
Integer[] FixedDays = {1, 2, 7, 14, 30, 60, 90, 180, 548, 730, 1095, 1460, 1825};
Double[] Ts = new Double[FixedDays.length];
for(int i = 0; i < FixedDays.length; i++) {
Ts[i] = FixedDays[i] / 365.0;
}
或者您可以使用流来获得更简洁的解决方案
我想划分一个java.lang.Integer数组并将结果保存到一个java.lang.Double数组中。我在互联网上搜索并找不到有用的信息(大多数关于 java.lang.Integer class 的搜索导致原始类型 int 操作,如 Division of integers in Java, and this
我的以下代码不起作用
Integer[] FixedDays = {1, 2, 7, 14, 30, 60, 90, 180, 548, 730, 1095, 1460, 1825};
Double[] Ts = FixedDays / 365.0;
关于 java.lang.Integer(或更一般地,数字 class 和其他基本数学运算)是否有快速除法的方法?有没有支持这种数字数组运算的数学包?
您可以使用 Java Streams 非常简洁地做到这一点:
Arrays.stream(FixedDays).map(i -> i / 365.0).toArray();
或
double[] doubles = Arrays.stream(FixedDays)
.map(i -> i / 365.0)
.mapToDouble(Double::doubleValue)
.toArray();
或
Double[] Ts = Arrays.stream(FixedDays)
.map(i -> i / 365.0)
.toArray(Double[]::new);
你必须遍历每个元素
Integer[] FixedDays = {1, 2, 7, 14, 30, 60, 90, 180, 548, 730, 1095, 1460, 1825};
Double[] Ts = new Double[FixedDays.length];
for(int i = 0; i < FixedDays.length; i++) {
Ts[i] = FixedDays[i] / 365.0;
}
或者您可以使用流来获得更简洁的解决方案