java - Java中随机选择函数

标签 java

我想随机选择一个函数。这是以下代码:

public class Thank_you_five implements RandomInterface
{
  public static void Thankyou_five(){...}
}
public class Thank_you_four implements RandomInterface
{
  public static void Thankyou_four(){...}
}
public class Thank_you_three implements RandomInterface
{
  public static void Thankyou_three(){...}
}
public interface RandomInterface
{
  public static void Thankyou_five();
  public static void Thankyou_four();
  public static void Thankyou_three();
}

所以我的目标是随机选择一个函数,就像在Python中我们random.choose()和里面的一些函数一样,我想用Java实现同样的效果

请帮忙。

谢谢, 阿德里亚

最佳答案

首先,在接口(interface)内定义一个抽象方法可能会更好:

public interface RandomInterface{
    void thankYou();
}

然后您可以创建多个实现:

RandomInterface t1 = () -> System.out.println("thank you 1");
RandomInterface t2 = () -> System.out.println("thank you 2");
RandomInterface t3 = () -> System.out.println("thank you 3");

要获得随机实现,您可以将所有对象添加到数组并生成随机索引:

RandomInterface[] arr = {t1, t2, t3};
int i = new Random().nextInt(arr.length);
arr[i].thankYou();

关于java - Java中随机选择函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54793880/

相关文章:

java - Spark - 使用 foreachpartition 收集分区

java - 如何设置 Intellij 以在程序上运行 javap 命令?

java - 如何通过 Spring 的 @RepositoryRestResource REST API 在多对多关系中添加元素?

java.io.EOFException : Unexpected end of ZLIB input stream using Apache POI

java - CreateValidationResults 看不到 customFieldValue

java - 为什么我的 Spring @Autowired 字段为空?

java - 保护 iphone api web 服务的最安全/最简单的方法

java - 如何在 Eclipse 中为 Glassfish 服务器构建 .war 文件

java - Android - 多线程TCP连接

java - 一些ajax post请求的tomcat 2分钟超时