`
lj_gzy2014
  • 浏览: 18162 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

java编程基础之数组队列

    博客分类:
  • java
阅读更多

            最常见的数据存储结构就是数组,数组查找方便,但删除,插入麻烦,而且大小固定不变。有时所需数组的长度会改变,那么这时就要用到数组队列。

            数组队列的实质还是数组,只不过将数组的动态增删封装在一个类中,增删的实质还是两个数组之间的复制。

          下面代码实现了数组队列的增,删,改,查。

package array;

public class test1 {
	 private Object[] array;
	 private int length;
	 
	 public int size(){
		 return length;
	 }
	 //产生一个数组
	 public void create(){
		 array=new Object[10];
		 for(int i=0;i<10;i++){
			 array[i]=i;
			 length++;
		 }
	 }
	//向数组中添加元素
	 public void add(Object data){
		 Object []array1=new Object[length+1];
		 for(int i=0;i<length;i++){
			 array1[i]=array[i];
		 }
		 array1[length]=data;
		 array=array1;
		 length++;
	 }
	 //向数组中插入元素
	 public void insert(int index ,Object data){
		 if(index>=0&&index<length){
			 Object []array1=new Object[length+1];
			 for(int i=0;i<index;i++){
				 array1[i]=array[i];
			 }
			 array1[index]=data;
			 for(int j=index+1;j<length;j++)
			 {
				 array1[j]=array[j-1];
			 }
			 array=array1;
		 }
		 else
		 {
			 System.out.println(" error");
		 }
	 }
	 //按照元素删除元素
	 public void delData(Object data){
		 Object []array1=new Object[length-1];
		 int k=0;
		 for(int i=0;i<length;i++){
			 if(array[i]==data){	 
			 }
			 else
			 {
				 array1[k]=array[i];
				 k++;
			 }
		 }
		 length--;
		 array=array1;
	 }
	 //按照位置删除元素
	 public void delIndex(int index){
		 if(index>=0&&index<length)
		 {
			 Object []array1=new Object[length-1];
			 for(int i=0;i<index;i++)
			 {
				 array1[i]=array[i];
			 }
			 for(int j=index+1;j<length;j++)
			 {
				 array1[j-1]=array[j];
			 }
			 length--;
			 array=array1;
		 }
		 else
		 {
			System.out.println("error"); 
		 }
		 
	 }
	 //遍历数组
	 public void travel(){
		 for(int i=0;i<length;i++){
			 System.out.println(array[i]);
		 }
	 }
	public static void main(String[] args) {
			test1 test=new test1();
			test.create();
			test.delData(3);
			test.insert(0, 100);
			test.delIndex(8);
			test.travel();
	}

}

 

分享到:
评论

相关推荐

    java编程基础—数组练习.pdf

    在Java编程中,数组是一种非常基础且重要的数据结构,它允许我们存储同类型的多个数据项。数组的概念在上述的几个课后题目中被反复强调,包括数组的定义、创建、初始化、复制、排序以及多维数组的操作。接下来,我们...

    同步java之数组与队列

    在Java编程语言中,数组和队列是两种基础且重要的数据结构。它们在处理数据时起着关键作用,尤其在实现高效算法和并发操作时。本文将深入探讨这两个概念,并结合给定的`Array.java`文件,分析其可能包含的Java数组和...

    用数组实现的循环队列(java)

    本篇文章将探讨如何在Java中使用数组实现一个循环队列,通过阅读《用数组实现的循环队列(java)》这篇博文,我们可以深入理解循环队列的工作原理以及其在实际编程中的应用。 循环队列是队列的一种变体,它巧妙地...

    java队列实现(顺序队列、链式队列、循环队列)

    Java中的队列是一种数据结构,它遵循先进先出(FIFO)原则,即最先插入的元素将是最先被删除的。...队列是许多算法和并发编程场景的基础,如生产者消费者模型、多线程同步等,因此深入理解和掌握队列的实现至关重要。

    Java中什么是数组共2页.pdf.zip

    在Java编程语言中,数组是一种特殊的数据结构,用于存储同类型元素的集合。它提供了一种方式来组织数据,使得可以高效地访问和操作这些数据。数组是固定大小的,一旦声明,其长度就不可更改。这个“Java中什么是数组...

    java数组_java_java数组_

    Java数组是Java编程语言中的基本数据结构之一,它允许我们存储多个同类型的元素在一个单一的变量中。数组的使用在程序设计中至关重要,因为它提供了一种高效、有序的方式来管理和访问数据。下面将深入探讨Java数组的...

    java算法题 : 数组相关问题

    在Java编程语言中,数组是一种基础且重要的数据结构,它允许我们存储同类型的元素集合。在处理算法题,特别是数组相关的问题时,了解并熟练掌握数组的特性、操作以及与其相关的算法是至关重要的。本篇将深入探讨Java...

    经典java编程练习题

    Java编程练习题涵盖了Java编程的方方面面,对程序员的Java基础知识、控制结构、数组和集合、面向对象编程、字符串和正则表达式、文件和输入/输出、数学运算、递归和算法、数据结构和算法等知识点进行了考核。

    Java中一维数组.pdf

    在Java编程语言中,一维数组是数据结构的基础,它是一个有序数据的集合,其中的每个元素都通过相同的数组名和一个独特的下标来标识。一维数组在Java中被视为特殊的变量类型,允许程序员存储同一类型的数据序列。下面...

    Java版数据结构代码,栈,动态数组,队列,链表,二叉树

    本资源提供了Java实现的数据结构代码,包括栈、动态数组、队列、链表和二叉树,这些都是计算机科学中最基础且重要的数据结构。 1. **栈(Stack)**:栈是一种“后进先出”(LIFO)的数据结构,常用于表达式求值、...

    Java数组相关的例子代码

    在Java编程语言中,数组是一种基础且重要的数据结构,它允许程序员存储一组具有相同类型的数据。数组的概念简单来说就是内存中连续存储的同一类型元素的集合。本篇将深入探讨Java数组的相关知识点,并通过实际的例子...

    java编程基础(培训机构内用)

    Java编程基础是编程学习的重要一环,尤其对于初学者来说,掌握Java语言的基本概念、语法和编程思维至关重要。这份“北京某培训机构内部教材”显然旨在为学员提供一套系统的Java入门教程。作为经典的教学资料,它可能...

    java中链表和数组的区别? (1) 数组和链表.pdf

    在Java编程中,数据结构是基础,而数组和链表是两种常见的线性数据结构。它们各有特点,适用于不同的场景。下面将详细讨论这两种数据结构的区别。 首先,数组是一种静态分配内存的数据结构,其所有元素在内存中是...

    JAVA数组学习教程

    在Java编程中,数组是一种基础且重要的数据结构,它允许程序员存储一组具有相同类型的元素。数组的使用是程序设计中的常见环节,尤其对于初学者来说,理解数组的概念和操作至关重要。 首先,Java中的数组分为两种...

    Java图解创意编程:从菜鸟到互联网大厂之路.pptx

    1. Java编程基础知识:变量、数据类型、控制流语句、函数、数组、链表、栈、队列、树等。 2. Java常用算法和数据结构:冒泡排序、选择排序、插入排序、链表、树等。 3. Java网络编程基础知识:TCP/IP协议、Socket...

    JAVA大学教学数组PPT教案学习.pptx

    Java编程语言中的数组是基础且重要的数据结构,用于存储同类型的数据集合。数组在Java中直接被支持,没有单独的数组类。对于基本数据类型,数组的所有元素必须是相同类型的,而对于引用类型(如对象),数组中的元素...

    Java语言基础编程.pdf

    Java语言是一种广泛使用的面向对象的编程语言,它以其健壮性、跨平台性和面向对象的特点而闻名。...通过对Java语言基础编程的学习,可以打下坚实的编程基础,为进一步深入学习Java和开发实际应用打下良好的基础。

    java零基础自学之栈和队列

    在Java编程语言的学习过程中,掌握数据结构的基础是至关重要的,特别是栈和队列这两种特殊的线性表。本篇文章将从零基础的角度出发,详细介绍栈和队列的概念、存储结构以及在Java中的实现。 3.0 简介 栈和队列是...

    java基础数据结构-队列

    ### Java基础数据结构—队列 #### 一、队列的概念与特性 队列是一种特殊类型的线性表,它的特点是先进先出(FIFO,First In First Out)。我们可以将其想象成现实生活中的排队情景,比如排队购买火车票时,最早...

    java编程基础笔记(集合)

    Java编程基础笔记主要聚焦在集合框架上,这是Java编程中不可或缺的部分。集合框架是Java提供的一组接口和类,用于存储和操作数据。它包括两种主要类型:Collection和Map。 Collection是所有单值容器的超接口,其中...

Global site tag (gtag.js) - Google Analytics