JAVA学习心得-----关于数组以及运用数组创建队列

JAVA学习心得-----关于数组以及运用数组自定义队列

数组
1.储存规定长度并且需要存入数据为相同类型
2.格式为 数据类型[] 数组名 = new 数据类型[]{内容};
例如: 整形数组
int[] S = new int[]{1,2,3};
字符串数组
String[] S = new String[]{“a”,“b”,“c”};

可以不填入内容,在[]写入数字n,那么便创建了一个长度为n的内容是"空"的数列。
3.数组具有连续性,无法直接用本体数组来实现增添删除操作。
4.数组里的内容可以重复,无影响。
队列
格式:Queue queue = new LinkedList<类型>();
许多地方都会说队列先进先出,无长度限制,这实际是JAVA中原Queue里的方法造成的结果,我们也能够自己写入方法,来模拟、改变原JAVA中队列的规则。
自定义队列思路
根本:运用数组来实现规则。
这里的示范,我只让队列存入String类型的数据,数组用String类型来定义。以下图片中的数字代表下标,a表示数据。

1.首先需要一个存有运算规则的类,新建一个MyQueue.java

public class MyQueue {
   
	//首先创建一个用来存数据的数组
	private String[] text = new String[0];
	//下面编写运算方法
	}

即可。

2.(写入MyQueue类中)实现添加的功能,运用两个数组进行操作,创建一个比上一个数组长度多1的新数组,将原来数组拥有的数据复制过来,并加入新的数据,最后新数组覆盖掉原数组即可。这里模拟队列,只添加在最后一位。
在这里插入图片描述

	//添加(到数组最后)
    public void add(String a) {
   
    	//创建一个新数组,比第一个数组长度多1
    	String[] Ntext = new String[text.length+1];
    	
    	//将原数组的数据复制给新数组
    	for(int i=0;i<text.length;i++) {
   
    		Ntext[i] = text[i];
    	}
    	
    	//将加入的数据放到新数组的最后一位
    	Ntext[Ntext.length-1] = a;
    	//将地址指向新的数组,可以理解为把新数组的数据赋值给原来的数组
    	text = Ntext;
    	

3.实现获取数据功能。

 //从队列中取出一个
    public String get(int index) {
   
    	//运用下标来返回数组中的值
    	String a = text[index];
    	return a;
    }

4.实现返回长度的功能。

//队列的长度
    public int size() {
   
    	return text.length;
    }

5.实现删除功能。模拟队列删除最后一个,只需复制原数组的最后一个数据之前的数据,给新数组即可。
在这里插入图片描述

//去除最后一个
    public void cutlist(){
   
        //当队列长度为0时
    	if(text.length == 0) {
   
    		System.out.println("长度为0,无法删除");
    	}
    	//创建一个新数组,比第一个数组长度少1
    	else {
   
    	S
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值