「java怎么找元素栈」怎么求栈中元素个数
今天给各位分享java怎么找元素栈的知识,其中也会对怎么求栈中元素个数进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、Java字符串插入和取栈顶元素的问题
- 2、用java实现数据结构“栈
- 3、Java怎么获取当前跟踪的堆栈
- 4、怎么用java代码实现栈内存?
- 5、都说 java 中的 栈只能在栈顶进行 插入与删除元素,想问能不能遍历整个 栈以查找到某一个特定的元素
- 6、java栈的元素怎么设置
Java字符串插入和取栈顶元素的问题
1、最好先使用这个字符串作为参数构造一个StringBuilder,然后使用StringBuilder的插入字符方法插入你的字符,最后用toString得到字符串。
2、在方法的前面加个类型转化就可以了。
用java实现数据结构“栈
Java栈的实现
public class MyStack { //定义一个堆栈类
int[] array; //用int数组来保存数据,根据需要可以换类型
int s_size; //定义堆栈的宽度
public MyStack(int i){ //定义一个带参数构造器
array=new int[i]; //动态定义数组的长度
s_size=0; //堆栈的默认宽度为0
}
public MyStack(){ //默认构造器
this(50); //默认构造器可容纳50个元素
}
public void push(int i){ //压栈
array[this.s_size]=i;
this.s_size++;
}
public int pop(){ //从堆栈中取元素,从栈顶开始取
if(this.s_size!=0){
int t=array[s_size-1]; //用中间变量保存栈顶的元素
array[s_size-1]=0; //取完元素该位置设为0
s_size--; //栈的大小减1
return t; //返回栈顶元素
}else{
System.out.println("This stack is empty"); //当栈为空时显示提示信息,返回0
return 0;
}
}
public boolean isEmpty(){ //判断栈是否为空
return this.s_size==0;
}
public int top(){ //从栈顶取值,功能和 pop() 方法一样
if(!this.isEmpty()){
int t=array[this.s_size-1];
array[this.s_size-1]=0;
this.s_size--;
return t;
}else{
System.out.println("This stack is empty!");
return 0;
}
}
public void printAll(){ //打印出堆栈中的所有元素的值,不是取出,元素依然在堆栈里
if(!this.isEmpty()){
for(int i=this.s_size - 1;i=0;i--){
System.out.println(array[i]);
}
}
}
//下面是测试代码
public static void main(String[] args){
MyStack stack=new MyStack();
stack.push(4);
stack.push(5);
stack.push(6);
stack.push(7);
//System.out.println(stack.isEmpty());
stack.printAll();
System.out.println("===========");
System.out.println(stack.top());
System.out.println(stack.top());
System.out.println(stack.top());
System.out.println(stack.top());
System.out.println(stack.top());
}
}
Java怎么获取当前跟踪的堆栈
解决方法 1:
您可以使用Thread.currentThread().getStackTrace()
返回的数组的 StackTraceElement s 表示程序的当前堆栈跟踪。
解决方法 2:
Thread.currentThread().getStackTrace();
如果你不在乎堆栈的第一个元素是什么。
new Throwable().getStackTrace();
会有一个定义的位置,您当前方法的问题。
解决方法 3:
愚蠢是我,Thread.currentThread().getStackTrace();
解决方法 4:
try {
}
catch(Exception e) {
StackTraceElement[] traceElements = e.getStackTrace();
//...
}
或
Thread.currentThread().getStackTrace()
怎么用java代码实现栈内存?
使用java.util包中的Stack类创建一个栈对象
public Object push(Object data);输入数据,实现压栈
public Object pop();输出数据,实现弹栈
public boolean empty()判空
public Object peek();查看栈顶元素
可以去查查API嘛
我也是学java的,大家一起进步。
都说 java 中的 栈只能在栈顶进行 插入与删除元素,想问能不能遍历整个 栈以查找到某一个特定的元素
当然可以 要看你的栈的实现是否提供改接口
java的stack类提供了以下接口
int search(Object o)
返回对象在堆栈中的位置,以 1 为基数。
java栈的元素怎么设置
java.util.Stack 类的构造方法创建对象
这个类里面有这个方法
public peek() 查看栈顶对象而不移除它。。
java怎么找元素栈的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于怎么求栈中元素个数、java怎么找元素栈的信息别忘了在本站进行查找喔。