当前位置: 首页 > 知识库问答 >
问题:

Java整数数组除法和其他数学运算

田志
2023-03-14

我有个愚蠢的问题。我想划分一个java.lang.Integer数组,并将结果保存到一个java.lang.Double数组中。我在Internet上搜索,但没有找到有用的信息(大部分关于Java.lang.Integer类的搜索都导致了原始类型int操作,如Java的整数除法和Java的整数除法)。

我下面的代码不起作用

    Integer[] FixedDays = {1, 2, 7, 14, 30, 60, 90, 180, 548, 730, 1095, 1460, 1825};
    Double[] Ts = FixedDays / 365.0;

对于java.lang.Integer(或者更一般的Number类和其他基本的数学运算),有没有一种快速的方法来进行除法?有没有一些数学软件包支持这样的数组运算?

共有2个答案

赏航
2023-03-14

你可以用Java溪流做得很简洁:

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);
贺浩壤
2023-03-14

您必须循环遍历每个元素

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;
}

也可以使用流来实现更简洁的解决方案

 类似资料:
  • 问题内容: 我有一个程序,该程序读取两个实数,然后打印出这两个之间的所有数字,这些数字可以被2或3或5整除。该程序可以正常工作,但是当用户输入两个非常大的数字时(例如1122222123333)和214123324434434),程序需要很长时间才能计算出结果。我想以某种方式修复该程序,以便即使对于大量结果也将立即打印出来。 到目前为止,这是我的代码: 问题答案: 好吧,您根本不需要循环。 您知道

  • 前言 数组的其他方法如下: 方法 描述 备注 indexOf(value) 从前往后索引,获取 value 在数组中的第一个下标 lastIndexOf(value) 从后往前索引,获取 value 在数组中的最后一个下标 find(function()) 找出第一个满足「指定条件返回true」的元素。 findIndex(function()) 找出第一个满足「指定条件返回true」的元素的in

  • 我有2个java数组 如果我按升序对int数组排序,它将是: 现在我想相应地对名称数组进行排序。输出应为: 我该如何维持一段关系?我见过这个链接(基于其他排序的数组排序数组),但它是针对js的

  • 问题内容: 我一直在搜索有关此主题的信息,但仍然听不懂,如果有人可以详细说明,我将非常感激。 我的任务是将两个变量除以整数除以余数。问题是,我不知道余数是什么,现在我做了类似的事情,这是通过互联网搜索得到的: 如果我例如设置(a = 43)和(b = 67) 然后我会得到这个结果: 现在,由于我不知道其余的是什么(这只是来自互联网的建议),所以我不知道这是否是正确的答案。 谢谢你的帮助, 亲切的问

  • 这感觉是个愚蠢的问题,但我在Java文档中的任何地方都找不到答案。如果我声明两个int然后将它们除法,到底发生了什么?它们是先转换为,然后进行除法,然后再转换为,还是将除法“完成”为整数? 此外,纯粹从实验来看,整数除法似乎使答案接近零(即和)。我相信这是对的吗?

  • 问题内容: 这听起来像一个愚蠢的问题,但是我在Java文档的任何地方都找不到答案。如果我声明两个整数然后除以它们,究竟发生了什么?它们是先转换为除法然后再转换为,还是除法为整数? 另外,纯粹从实验来看,整数除法似乎将答案舍入为零(即和)。我相信这一点对吗? 问题答案: 它们被划分为整数运算。因此简单地将整的整数你多少次装配到。还可以给您除法的余数。所以