gpt4 book ai didi

java - 在 switch 语句中保存未知子类类型的变量

转载 作者:行者123 更新时间:2023-11-30 07:26:30 25 4
gpt4 key购买 nike

我有一个父类(super class) TetrisPiece,其每个变体都有子类,即

class PieceI extends TetrisPiece{
}

class PieceJ extends TetrisPiece{
}

etc...

在另一个类中,我有一个基于随机数的 switch 语句,它创建了一个随机片段

switch(rand){
//I
case 1: {
PieceI pieceI = new PieceI();
break;
}
//T
case 2: {
PieceT pieceT = new PieceT();
break;
}
etc...
default:
break;
}

我的目的是提取从 switch 语句范围生成的片段,以便稍后在类里面使用它。

由于范围问题,switch 方法显然不起作用,并且我无法在 switch 语句之外创建父类(super class)数组,因为由于随机化,我无法转换索引。

感谢任何帮助。

最佳答案

创建父类(super class) TetrisPiece 的实例,然后在 switch 语句中为其分配 PieceT、PieceI 等。

TetrisPiece piece;

switch(rand){
//I
case 1: {
piece = new PieceI();
break;
}
//T
case 2: {
piece = new PieceT();
break;
}
etc...
default:
break;
}

关于java - 在 switch 语句中保存未知子类类型的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36757475/

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