栈的一个例子

 import java.lang.*;

public class MyStack{
 private Object[] obj = new Object[100];
 private int size = 0;//数组里面元素的个数

 public MyStack(){}//构造方法

 public boolean empty(){//判断是否为空
  return size==0;
 }

 public Object push(Object o){//把元素压到栈的底步
  this.obj[this.size] = o;
  size++;
  return o;
 }
 
 public Object pop(){//把最后的元素删除
  if(this.size == 0){
   System.out.println("Stack is empty!");
   System.exit(0);
  }
  this.size--;
  Object o = this.obj[this.size];
  this.obj[this.size] = null;
  return o;
 }
  
 public Object peek(){//查找某个元素
  if(this.size == 0){
   System.out.println("Stack is empty!");
   System.exit(0);
  }
  return this.obj[this.size-1];
 }

 public void view(){
  if(this.size == 0){
   System.out.println("Stack is empty!");
   System.exit(0);
  }
  for(int i=0;i<size;i++){
   System.out.println(this.obj[i]);
  }
 }

 public static void main(String[] args){
  MyStack stack = new MyStack();
  String str1 = "hello";
  Integer s = new Integer(23);
  StringBuffer str2 = new StringBuffer(",world");
  String str3 = new String("lch");
  stack.push(str1);
  stack.push(s);
  stack.push(str2);
  stack.push(str3);
  
  stack.pop();
  
  if(!stack.empty()){
   System.out.println("不为空!");
  }
  stack.view();
 }

}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当使用进行数值转换时,一个常见的例子是将十进制数转换为二进制数。以下是一个使用实现数值转换的Python示例代码: ```python class Stack: def __init__(self): self.items = [] def push(self, item): self.items.append(item) def pop(self): if not self.is_empty(): return self.items.pop() else: return None def is_empty(self): return len(self.items) == 0 def size(self): return len(self.items) def decimal_to_binary(decimal_num): stack = Stack() while decimal_num > 0: remainder = decimal_num % 2 stack.push(remainder) decimal_num = decimal_num // 2 binary_num = "" while not stack.is_empty(): binary_num += str(stack.pop()) return binary_num decimal_number = 42 binary_number = decimal_to_binary(decimal_number) print(f"The binary representation of {decimal_number} is {binary_number}") ``` 解释: 1. 首先,我们定义了一个类 `Stack`,它具有常见的操作方法。 2. 在 `decimal_to_binary` 函数中,我们使用一个来进行数值转换。通过不断地将十进制数除以2并将余数压入中,直到十进制数变为0为止。 3. 然后,我们从中依次弹出每个余数,并将其转换为字符串,最终得到二进制表示。 4. 最后,我们使用示例输入的十进制数 42 进行测试,并打印出转换后的二进制表示。 运行上述代码将输出:`The binary representation of 42 is 101010`。 这个例子展示了如何使用来进行数值转换,你可以根据需要进行修改和扩展。希望对你有所帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值