java Stack问题 想把栈中的char类型元素赋值给变量,编译器报错。求解释,求真相。
importjava.util.*;publicclasstest{publicstaticvoidmain(Stringargs[]){Stacks=newStack(...
import java.util.*;
public class test {
public static void main(String args[]){
Stack s=new Stack();
s.push('a');
char ch=s.peek();
System.out.println(s.peek());
}
} 展开
public class test {
public static void main(String args[]){
Stack s=new Stack();
s.push('a');
char ch=s.peek();
System.out.println(s.peek());
}
} 展开
展开全部
char ch = 是基本类型char类型,而s.peek()返回的是object类型,
object类型肯定不能自动转化为基本类型char得,可以改成这样
import java.util.Stack;
public class test {
public static void main(String args[]) {
Stack s = new Stack();
s.push('a');
char ch = s.peek().toString().charAt(0);
System.out.println(s.peek());
}
}
object类型肯定不能自动转化为基本类型char得,可以改成这样
import java.util.Stack;
public class test {
public static void main(String args[]) {
Stack s = new Stack();
s.push('a');
char ch = s.peek().toString().charAt(0);
System.out.println(s.peek());
}
}
展开全部
1楼,我觉得是这样:
char 为基本类型,但jdk1.5以后加入了自动装箱机制,也就是说,char 会自动"装箱"为Character对象。
所以:
import java.util.Stack;
public class test {
public static void main(String args[]) {
Stack s = new Stack();
s.push('a');
char ch = (Character)s.peek();
System.out.println(s.peek());
}
}
,当然,前提是楼主的jdk为1.5及以上版本
char 为基本类型,但jdk1.5以后加入了自动装箱机制,也就是说,char 会自动"装箱"为Character对象。
所以:
import java.util.Stack;
public class test {
public static void main(String args[]) {
Stack s = new Stack();
s.push('a');
char ch = (Character)s.peek();
System.out.println(s.peek());
}
}
,当然,前提是楼主的jdk为1.5及以上版本
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
The Stack class represents a last-in-first-out (LIFO) stack of objects.
你看看Stack里边存的东西是什么类型?
你看看Stack里边存的东西是什么类型?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询