泛型的定义使用

本文介绍了Java中泛型的应用,通过泛型实现了一个可适应多种类型的栈和队列数据结构。代码示例展示了如何在队列满时进行扩容,并提供了插入和获取元素的方法。在主方法中,泛型队列被用来存储整数和字符串,展示了其灵活性。
摘要由CSDN通过智能技术生成

泛型顾名思义就是泛指所有类型,java是一个强类型语言,你给他定义什么类型那他就会创建什么类型的地址空间。嗯。。看起来没啥问题 但是比如对于栈和队列来说 你要入什么类型的栈难道还要再去创建一个栈吗?所以就可以用泛型加在栈或队列上。(不止这个用法)

public class Queue<all> {
	 private int p=0;
	   private int s=0;
	   private all a[]=(all[])new Object[10];
	   public void set(all value) {
		   if(p-s==a.length) {
			   //进行队列扩容
			   all b[]=(all[])new Object[a.length*2];
			   for(int i=s;i<p;i++) {
				   b[i%b.length]=a[i%a.length];
			   }
			   a=b;
		   }
		   a[p%a.length]=value;
		   p++;
	   }
	   public void get() {
		   if(p==s) {
			   return;
		   }
		   System.out.println(a[s%a.length]);
		   s++;
	   }
}

主方法:

public class Demo {
   public static void main(String []args) {
	  Queue iq=new Queue();
	  iq.set(5);
	  iq.get();
	  iq.set("134");
	  iq.get();
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值