Java 函数的哪个参数
我如何检查调用了哪个字段的函数-使用Java 函数的哪个参数,java,Java,我如何检查调用了哪个字段的函数-使用Scroll.up或Scroll.down?我知道在上面的代码中,我可以以其他方式获得相同的效果,但这是一个简化的代码,本质上是我的问题。如果(up)然后按下up 如果(向下),则按下向下键 布尔数据类型为(真/假,1/0),因此如果调用 class Scroll { static boolean up; static boolean down; public static void scroll(boolean direction)
Scroll.up
或Scroll.down
?我知道在上面的代码中,我可以以其他方式获得相同的效果,但这是一个简化的代码,本质上是我的问题。如果(up)然后按下up
如果(向下),则按下向下键
布尔数据类型为(真/假,1/0),因此如果调用
class Scroll {
static boolean up;
static boolean down;
public static void scroll(boolean direction) {
if (/* ... */) {
System.out.println("UP");
}
else {
System.out.println("DOWN");
}
}
public class Test2 {
public static void main(String[] args) {
Scroll.scroll(Scroll.up);
}
}
然后,如果down为“true”,它将进入。如果只有向上或向下选项,则可以将
方向
重命名为向上
,然后:
if (down)
如果有更多的方向(例如,向左和向右),或者即使不是真的,这就是enum
方便的地方:
if (up) {
// Up
}
else {
// Down
}
然后在您的代码中使用它,可能需要使用开关
:
enum Direction {
Up,
Down,
Left,
Right
}
正如评论所建议的,使用枚举:
switch (direction) {
case Direction.Up:
// ...
break;
case Direction.Down:
// ...
break;
case Direction.Left:
// ...
break;
case Direction.Right:
// ...
break;
}
您可以看到它在中工作。我是一个非常初学者,没有意识到我必须使用enum。谢谢,这就是我想要的:)。我是一个非常初学者,我没有意识到我必须使用enum。谢谢,这就是我想要的:)。我是一个非常初学者,我没有意识到我必须使用enum。谢谢,这就是我想要的:)。
class Scroll {
public static enum Direction { up, down};
public static void scroll( Direction direction) {
if ( direction == Direction.up) {
System.out.println("UP");
}
else {
System.out.println("DOWN");
}
}
}
public class Test2 {
public static void main(String[] args) {
Scroll.scroll( Scroll.Direction.up);
}
}