gpt4 book ai didi

java - 在其中使用 switch-case 时,调用方法 toString 时发生 com.sun.jdi.InitationException

转载 作者:太空宇宙 更新时间:2023-11-04 15:12:25 24 4
gpt4 key购买 nike

当我尝试在调试期间可视化对象的 toString() 值时,我收到此消息。我的 toString 方法是这样的:

@Override
public String toString(){
String s = "ACTION: <P"+this.playerSit+" "+this.type;
switch(this.type){
case DISCARD:
s+=" "+this.cardDiscarded+">";
break;
case CALLVALUE:
s += " "+this.valueCalled+">";
break;
case CALLSCORE:
s += " "+this.scoreToWin+">";
break;
case CALLSUIT:
s += " "+this.suitCalled+">";
break;
}
return s;
}

在添加 switch-case 结构之前,它工作得很好。

编辑:我修改了代码如下:

@Override
public String toString(){
String s = "";

s += "ACTION: <P"+this.playerSit+" "+this.type;

if(this.type == Type.DISCARD)
s += " "+this.cardDiscarded+">";
if(this.type == Type.CALLVALUE)
s += " "+this.valueCalled+">";
if(this.type == Type.CALLSCORE)
s += " "+this.scoreToWin+">";
if(this.type == Type.CALLSUIT)
s += " "+this.suitCalled+">";
return s;
}

现在它又可以工作了。所以问题出在 switch-case 上,但我不知道为什么。

最佳答案

this.typenull。在 switch 语句之前添加 if 检查是否为 null 以进行验证。

关于java - 在其中使用 switch-case 时,调用方法 toString 时发生 com.sun.jdi.InitationException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21184563/

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