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

Java元素智能和2数组

段干宜
2023-03-14

鉴于我在Java中有两个数组AB,我想添加元素,以元素方式,这导致一个和数组。用循环隐式地做到这一点很容易,但我想知道是否有更优雅的解决方案,也许是番石榴集合或java utils中的构建。或者可能是一种Python式的方式,使得列表理解变得容易。

例子:

A   = [2,6,1,4]
B   = [2,1,4,4]
sum = [4,7,5,8]

共有2个答案

符渊
2023-03-14

您可以在数组上使用java8流和操作,如下所示:

//in this example a[] and b[] are same length
int[] a = ...
int[] b = ...
int[] result = new int[a.length];
IntStream.range(0, a.length)
     .forEach(i -> result[i] = a[i] + b[i]);

答案是java8

公孙向荣
2023-03-14

你可以这样做:

private void sum() {
    int a[] = {2, 6, 1, 4};
    int b[] = {2, 1, 4, 4};

    int result[] = new int[a.length];
    Arrays.setAll(result, i -> a[i] + b[i]);
}

这将首先创建正确大小的int result[]

随着昨天发布的Java8,最简单的部分来了:

  • 您可以对数组执行操作。setAll(int[]数组,IntUnaryOperator)
  • 作为IntUnaryOperator您可以创建一个将索引映射到结果的lambda,在这里,我们选择将i映射到a[i]b[i],这正好产生我们的和
  • 对于非常大的数组,我们甚至可以使用数组。parallelSetAll

 类似资料:
  •   ElementwiseProduct对每一个输入向量乘以一个给定的“权重”向量。换句话说,就是通过一个乘子对数据集的每一列进行缩放。这个转换可以表示为如下的形式:   下面是一个使用的实例。 import org.apache.spark.SparkContext._ import org.apache.spark.mllib.feature.ElementwiseProduct import

  • 问题内容: 我的问题很简单,假设我有一个像 我想得到一个像 但是,如果您编写类似 要么 它不会工作。 到目前为止,我发现的唯一方法是编写如下内容: 但我绝对可以确定,有更好的方法可以做到这一点。有谁有想法吗? 问题答案: 进行整数除法并返回。 将数组转换为float并完成技巧:

  • 2.1. 概述 1998年修订的第一版C++标准只提供了一种智能指针: std::auto_ptr 。 它基本上就像是个普通的指针: 通过地址来访问一个动态分配的对象。 std::auto_ptr 之所以被看作是智能指针,是因为它会在析构的时候调用 delete 操作符来自动释放所包含的对象。 当然这要求在初始化的时候,传给它一个由 new 操作符返回的对象的地址。 既然 std::auto_p

  • 我有一个问题隐藏和显示一个元素取决于一个布尔变量在角2。 这是div要显示和隐藏的代码: 变量已“编辑”,并存储在我的组件中: 元素是隐藏的,当saveTodos函数启动时,会显示元素,但3秒钟后,即使变量返回为false,元素也不会隐藏。为什么?

  • 在家庭和城市实施物联网系统使它们成为智能家居和智能城市。 智能家居或智能城市让生活变得更加轻松和智能。 智能家居系统可以让我们的生活变得轻松。 从能源管理开始,使用恒温器的AC设备中的电源控制系统,所有这些都可以减少功耗。 门锁管理系统,安全管理系统,水管理系统也是其中的一部分。 尽管如此,这些都是智能家居系统中突出的重要因素。 任何希望自动化或想生活更轻松的事情都可以成为智能家居的一部分,智能家

  • 本节通过求数组的最大和最小值来提高初学者对数组的一些基本应用。 程序运行结果如下: 最高成绩:100 最低成绩:67 将变量 min 与 max 初值设成数组的第 1 个元素后,再逐一与数组中的各元素相比。比 min 小,就将该元索的值指定给 min 存放,使 min 的内容保持最小。同样,当该元素比 max 大时,就将该元素的值指定给 max 存放,使 max 的内容保持最大。for 循环执行完