package util;
/**
* 写两个方法,其中一个方法可以把某个整数插入到整型数组的特定位置,数组中原有元素向后移动
* 另一个方法能够从整形数组中特定位置删除掉一个元素,数组中原有元素向前移动
* @author zhanglu
*/
public class NuberArrayOperator {
/**
* 整数插入到整型数组的特定位置,数组中原有元素向后移动
* @param array
*/
public int[] insertNumber(int[] array,int insertIndex,int insertNumber){
if(array == null || array.length == 0){
System.out.println("数组不存在");
return null;
}
int len = array.length;
if(insertIndex >= len || insertIndex < 0){
System.out.println("插入位置不正确,请重新设置");
return null;
}
int i = 0 ;
for(;i < len;){
if(i == insertIndex){
break;
}
i++;
}
len++;
int[] _array = new int[len];
System.arraycopy(array, 0, _array, 0, array.length);
int j = i;
int temp = 0;
for(;j < _array.length-1;j++){
int t = _array[j+1];
if(temp == 0){
_array[j+1] = _array[j];
}else{
_array[j+1] = temp;
}
temp = t;
}
_array[i] = insertNumber;
return _array;
}
/**
* 整形数组中特定位置删除掉一个元素,
* 数组中原有元素向前移动
*/
public int[] removeArray(int[] array,int removeIndex){
if(array == null || array.length == 0){
System.out.println("数组不存在");
return null;
}
int len = array.length;
if(removeIndex >= len || removeIndex < 0){
System.out.println("没有此索引");
return null;
}
//变相移位法
/*int i = 0;
for(;i < len;i++){
if(i == removeIndex){
break;
}
}
for(int j = i;j < len-1;j++){
array[j] = array[j+1];
}
len--;
int[] _array = new int[len];
for(int k = 0;k < len;k++){
_array[k] = array[k];
}
*/
//替代法
int i = 0;
int[] _array = new int[len-1];
int n = 0;
for(;i < len;i++){
if(i != removeIndex){
_array[n++] = array[i];
}
}
len--;
return _array;
}
}
分享到:
相关推荐
为了处理复杂的数组操作,开发者有时会创建自定义的类来辅助管理数组。在这个案例中,我们有一个名为"php的数组操作类"的压缩包,它提供了一些实用方法,帮助我们更有效地对数组进行操作。下面将详细介绍这些功能...
### 一、字符串数组操作类的设计与实现 #### 1. 类的定义 该代码片段中定义了一个名为 `StringArray` 的类,它继承自 `Object` 类,并实现了 `IDisposable` 接口。这个类的主要目的是提供对字符串数组的操作,包括...
JavaScript splice 数组操作(删除,插入)JavaScript splice 数组操作(删除,插入)JavaScript splice 数组操作(删除,插入)JavaScript splice 数组操作(删除,插入)JavaScript splice 数组操作(删除,插入)...
JavaScript 和 jQuery 中的数组操作是编程中非常基础且重要的部分,尤其在处理数据集合时。在 JavaScript 中,数组是一种特殊的数据结构,可以存储各种类型的数据,包括整型、字符串、对象等。虽然 JavaScript 不...
本文实例讲述了Python使用numpy模块创建数组操作。分享给大家供大家参考,具体如下: 创建数组 创建ndarray 创建数组最简单的方法就是使用array函数。它接收一切序列型的对象(包括其他数组),然后产生一个新的含有...
array_change_key_case -- 返回字符串键名全为小写或大写的数组 array_chunk -- 将一个数组分割成多个 array_combine -- 创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其值 array_count_values -- ...
在LabVIEW编程环境中,三维数组是一种非常重要的数据结构,它能够有效地存储和处理大量多维数据。...在实际项目中,结合“三维数组操作.vi”这样的范例,可以加深对这些概念的理解并应用于实际问题的解决。
Android 中的 JNI 数组操作教程 Android 中的 JNI 数组操作教程主要介绍了关于 Android 中 JNI 数组操作的相关资料,通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值。 JNI 中有两种数组...
本资料"Javascript数组操作整理"聚焦于JavaScript中的数组操作,旨在帮助开发者更好地理解和掌握相关知识。 1. 创建数组: JavaScript提供了多种创建数组的方式,如字面量语法`var arr = [元素1, 元素2, ...]`,或...
本文将详细探讨标题“Hebing.zip_数组操作_文件操作”所涉及的两个主要概念:数组操作和文件操作。 首先,让我们关注数组操作。数组是计算机科学中的一种基本数据结构,用于存储同一类型的数据集合。在C++中,数组...
数组操作是编程中常见的任务,包括创建、初始化、访问、修改、遍历以及对数组进行各种算法操作,如排序、查找、插入和删除。下面将详细解释这些概念。 1. **数组的创建与初始化**: 在Java中,数组可以通过指定...
JavaScript数组操作函数是编程中非常基础且重要的部分,它们提供了对数组进行各种操作的方法,包括添加、删除、合并以及转换等。以下是对标题和描述中提及的数组操作函数的详细说明: 1. **push()**: `push()` 函数...
JS数组操作:三维数组去除空元素 在实际项目中,我们经常会遇到一些复杂的数组操作问题,例如在树形结构中展示数据时,返回的三维数组中可能存在某些层数组为空,需要去除掉这些空数组,得到的数组为三层,并且每一...
本文将深入探讨易语言数组操作模块的相关知识点,包括数组的翻转、获取成员索引、检查重复项、替换成员、文本排序以及字符串比较。 1. **数组_翻转成员**: 这个功能用于将数组中的元素顺序反转。在易语言中,通过...
本教程将深入探讨C语言中的数组操作,特别是如何找出两个数组的交集。首先,让我们理解数组的基本概念。 数组是由相同类型的数据元素构成的集合,这些元素在内存中是连续存储的。每个元素都有一个唯一的索引,从0...
由于Web开发涉及大量的数据处理,因此对于PHP来说,数组操作成为了必须掌握的核心技能之一。...在实际开发中,我们还会遇到诸如数组排序、搜索、分割、合并等更多操作,这些都是基于上述基础数组操作之上的高级应用。
以下是Objective-C中数组操作的详细知识点总结: 1. **创建数组**: - 使用`initWithObjects:`方法创建并初始化一个NSArray对象,数组元素可以是任何对象类型,最后必须以nil作为结束符。 - 使用`...
在本项目"数组操作的Java成绩管理系统"中,我们利用数组来管理学生的成绩数据。这个系统可能包括了对学生成绩的添加、查询、排序以及平均分计算等功能。以下是对该系统的详细解释和相关知识点: 1. **数组定义与...
数组操作是任何开发人员在日常编码中不可或缺的一部分,掌握各种数组方法能够极大提高代码效率和可读性。下面将详细介绍标题与描述中提到的几个关键的JavaScript数组操作知识点。 ### join(delimiter) `join()` ...
本编程题“数组操作分发饼干”旨在考察你对数组的理解以及在实际问题中的应用能力。这个问题可能是关于如何有效地分配资源,比如在一个群体中合理地分配饼干,以满足每个人的需求。 首先,我们需要理解数组的基本...