数组处理 Java 版Q22

介绍

此题需要看引导视频

此题需要 0.2.3 以上版本的 Jadeite

概要

下载初始代码文件。

按照 API 要求,填写代码,通过测试

下载

样例

题目

sum

接收一个整型数组,求出并返回所有数的和

参考答案

函数声明分析

需要一个整型数组,所以得有一个 int[] 的参数

需要返回所有数的和,所以返回值类型是 int

因此可以写出一个代码外壳

1 2 3
public int sum(int[] numbers) { return 0;}
实现代码

分析后,可以写出里面的执行代码

1 2 3 4 5 6 7
public int sum(int[] numbers) { int sum = 0; for (int i = 0; i < 5; i++) { sum += numbers[i]; } return sum;}
自己测试

可以自己在 run 里 测一测

1 2 3 4 5 6 7 <
public void run () { { int[] numbers = {1, 2}; int result = sum(numbers); Console.println(result); }}3

API

注意:此题中,我们假设任何一个传进函数的整数数组,均至少有 2 个 元素

allPositives

接收一个整型数组,

求出并返回 这个数组里的数 是不是都是正数

countLucky

接收一个整型数组,

求出并返回 这个数组里 有多少个幸运数

幸运数是 2

count

接收一个整型数组 和 一个整数,

求出并返回 这个数组里 有多少个 那个整数

max

接收一个整型数组,

求出并返回 这个数组里 最大的那个数

increasing

接收一个整型数组,

求出并返回 这个数组 是不是一个递增序列

递增序列

数组里的每一个值 都大于或者等于 它前面的值

indexOf

接收一个整型数组 和 一个要查询的整数,

求出并返回 这个要查询的整数 在数组里的 索引值

特殊情况

如果 数组里 有多个值 均为 要查询的那个数,则返回 从左往右 第一次出现时 所在的索引值

如果 数组里没有 要查询的那个数,则返回 -1

indexOfMax

接收一个整型数组,

求出并返回 这个数组里 最大的那个数的索引

特殊情况

如果 数组里 最大的值出现多次,则返回 从左往右 第一次出现时 所在的索引值

indexesOf

接收一个整型数组,和一个整型参考值

求出并返回 一个新的数组,这个数组里的元素 是 这个参考值 所有在数组中出现时的索引

案例
arr: [6, 7, 3, 8, 3]
result = indexesOf(arr, 3)
那么 result 应该是 [2, 4]

mapToPass

接收一个整型数组,和一个整型参考值

求出并返回 一个新的数组,这个数组里的每一个元素 都代表 这个元素是否 大于等于 那个参考值

案例
arr: [99, 100, 59]
result = mapToPass(arr, 60)
那么 result 应该是 [true, true, false]

slice

接收一个整型数组,一个开始索引,和一个结束索引

求出并返回 一个新的数组,这个数组原始数组 根据 开始 和 结束 位置 切出来的数组

约束

包含 开始索引,不包含结束索引

假设 开始到结束之间 至少有一个元素,

假设

0 <= 开始索引 < 结束索引 <= 数组长度
案例
arr: [6, 7, 3, 8, 4]
result = slice(arr, 1, 3)
那么 result 应该是 [7, 3]

ZZAX 微信公众

文档一更新,立刻告诉你