我正在编写一个不和谐机器人,在私人服务器中使用,只是为了混日子。这是我第一次使用java。我正在使用不和谐JDA库来编码机器人。然而,我认为这不是主要问题。
对于如何从我创建的单独类中的特定方法中提取输出,我感到困惑。
我试图从一个名为Color.java的单独类中的公共String方法中拉出一个String到一个名为Commands.java.的文件中。
这是我的命令代码。JAVA这不是主文件,而是与问题相关的文件,更具体地说是此代码的最后一个else if{}。
public class Commands extends ListenerAdapter {
@Override
public void onGuildMessageReceived(GuildMessageReceivedEvent event) {
String[] args = event.getMessage().getContentRaw().split(" ");
if (args[0].equalsIgnoreCase(bot.prefix + "info")) {
event.getChannel().sendTyping().queue();
event.getChannel().sendMessage("This is a test info description").queue();
}
else if (args [0].equalsIgnoreCase(bot.prefix + "ping")) {
long ping = event.getJDA().getGatewayPing();
event.getChannel().sendMessage(ping + "ms").queue();
}
else if (args [0-100].equalsIgnoreCase("white")){
Race newColorobj = new Color();
String white_test = newColorobj.white();
event.getChannel().sendMessage(white_test + ".").queue();
}
}
}
我打算从这个文件中提取最后一个“如果”,olor.java,从数组列表“白色”中挑选出一串随机的文本,并将其输出到不和谐的聊天频道。
public class Color {
Random rand = new Random();
int upperbound = 1;
int int_random = rand.nextInt(upperbound);
public String white() {
ArrayList<String> white = new ArrayList<String>();
white.add("This is a test");
return white.get(int_random);
}
}
我的终端在编译时输出此错误,但它仍然成功并运行:
white : The term 'white' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try
again.
At line:1 char:1
+ white c:; cd 'c:\Users\Colin\Dylan and Colin'; & 'c:\Users\Colin\.vsc ...
+ ~~~~~
+ CategoryInfo : ObjectNotFound: (white:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
如果用户试图对bot说“白色”,它不会用我想要的文本字符串进行响应。
我对Java还是新手。我做错了什么?
找到的解决方案:在Color.java内部,我需要将公共字符串白色(){}更改为公共字符串白色(字符串... args){}。
public class Color {
Random rand = new Random();
int upperbound = 1;
int int_random = rand.nextInt(upperbound);
public String white(String... args) {
ArrayList<String> white = new ArrayList<String>();
white.add("This is a test");
return white.get(int_random);
}
}
我去看看命令和信息是否正常?无论如何我觉得你的问题就在这里
else if (args [0-100].equalsIgnoreCase("white"))
难道不是这样吗?
else if (args [0].equalsIgnoreCase("white"))
我在我的单元测试中使用了sinon间谍。我正在测试的函数调用了一次间谍函数,但sinon坚持说它根本没有调用它。 正在测试的代码: 还有我的单元测试: 来自西农的消息: < li>draughts应检测显示方法:AssertError:预期displayBoard将被调用一次,但在object . assert .[as called once](node _ modules \ sinon \
问题内容: 我无法从另一个类Menu.swift调用GameViewController.swift中的函数。我这样调用该函数: 这是我要调用的函数: } 我在菜单类内的GameViewController.showLeaderboard()行中出现编译器错误“调用中的参数#1缺少参数”,但我不理解编译器期望的参数类型,因为我不需要任何声明就声明了该函数参数。 谢谢 问题答案: 在您定义为方法而不
我正在尝试创建一个21点模拟器。在向玩家和庄家发牌之前,我需要洗牌。是一个无效函数,是类中的卡类型。职业存储从职业中发出的牌。在游戏开始时,我需要向玩家和庄家发两张牌。当我尝试在类访问 的成员函数时,我收到错误消息“调用不带对象参数的非静态成员函数”。调用成员函数的正确方法是什么?我真的对语法感到困惑。
我不明白为什么下面的代码会打印两次。我以为应该是个人和学生。当通过“a”对象调用printPerson()内部的getInfo()时,为什么要调用Person类内部的一个,为什么不调用Student类中的一个?提前谢谢。
*我想在那里调用BankHashSet empty consructor。谢谢.
我正在尝试构建一个简单的Web应用程序,它接受大量的二进制输入,并计算一个布尔公式,然后输出。我做错了什么? null null