gpt4 book ai didi

java - 由于 : String cannot be converted to char,堆栈无法推送

转载 作者:行者123 更新时间:2023-12-02 03:44:34 25 4
gpt4 key购买 nike

import java.util.*;

public class plates2{
private static Scanner in;
private static Stack platestack = new Stack();

public static void main(String[] args)
{
add();
}

public static void add()
{
Scanner in = new Scanner(System.in);

System.out.print("Enter plate: ");
String pl = in.nextLine();

System.out.println("Plate added! ");

platestack.push(pl);
}
}

所以我无法编译代码并给出了这个错误。

错误:类型不兼容:字符串无法转换为字符 Platestack.push(pl);

有人可以指出哪里出了问题吗?我想将一个字符串压入堆栈。

最佳答案

当我编译此类(使用 Java 8)时,我没有收到任何错误消息。我只收到有关不安全/未经检查的操作的警告。

但是你说你得到了这个!

error: cannot infer type arguments for Stack private static Stack platestack = new Stack<>(); reason: cannot use '<>' with non-generic class Stack

>>灯泡时刻<<

但是java.util.Stack是一个泛型类。从 Java 5 开始就引入了泛型。

您必须定义自己的 Stack类,并且您必须使用它而不是标准 java.util.Stack 。如果您这样做了,您就定义了 Stack.push操作(仅)char参数,那么that就可以解释这个编译错误。这也可以解释没有其他人看到编译错误。

关于java - 由于 : String cannot be converted to char,堆栈无法推送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36424202/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com