gpt4 book ai didi

java - Android/Java - 调用随机函数只工作一次

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

我有一个小游戏,在这个游戏中我使用了一个随机单词,我也将它拆分成一个数组,这在开始时工作正常,但是当我尝试用一​​个新单词填充变量时,程序崩溃了。也许我做错了,也许我只是愚蠢而没有看到明显的错误,无论哪种方式我都需要一些帮助。

我已将问题分配到这些行中,我通过单击按钮调用 newGame() 并且调用本身有效。该程序使用 3 个不同的类。

在我的 MainActivity 类中:

    public void newGame(){
fullWord = "";
fullWord = _c.getWord();
charArray = fullWord.split("(?!^)");}

在 Controller 类中:

    public String getWord(){
return _m.setWord();
}

在模型类中:

    public String setWord(){
randomWord = wordArray[new Random().nextInt(wordArray.length)];
charArray = randomWord.split("(?!^)");
return randomWord;
}

Logcat:09-21 20:40:24.252: W/dalvikvm(536): threadid=1: 线程退出并出现未捕获的异常 (group=0x409961f8)
09-21 20:40:24.292: E/AndroidRuntime(536): 致命异常: main
09-21 20:40:24.292: E/AndroidRuntime(536): java.lang.NullPointerException
09-21 20:40:24.292:E/AndroidRuntime(536):在 com.example.hangmangame.MainActivity.newGame(MainActivity.java:156)
09-21 20:40:24.292: E/AndroidRuntime(536): 在 com.example.hangmangame.Model.setNewGame(Model.java:87)
09-21 20:40:24.292: E/AndroidRuntime(536): 在 com.example.hangmangame.Controller.onClick(Controller.java:39)
09-21 20:40:24.292: E/AndroidRuntime(536): 在 android.view.View.performClick(View.java:3480)
09-21 20:40:24.292: E/AndroidRuntime(536): 在 android.view.View$PerformClick.run(View.java:13983)
09-21 20:40:24.292: E/AndroidRuntime (536): 在 android.os.Handler.handleCallback (Handler.java:605)
09-21 20:40:24.292: E/AndroidRuntime (536): 在 android.os.Handler.dispatchMessage (Handler.java:92)
09-21 20:40:24.292: E/AndroidRuntime(536): 在 android.os.Looper.loop(Looper.java:137)
09-21 20:40:24.292: E/AndroidRuntime(536): 在 android.app.ActivityThread.main(ActivityThread.java:4340)
09-21 20:40:24.292:E/AndroidRuntime(536):在 java.lang.reflect.Method.invokeNative( native 方法)
09-21 20:40:24.292: E/AndroidRuntime(536): 在 java.lang.reflect.Method.invoke(Method.java:511)
09-21 20:40:24.292: E/AndroidRuntime(536): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
09-21 20:40:24.292: E/AndroidRuntime (536): 在 com.android.internal.os.ZygoteInit.main (ZygoteInit.java:551)
09-21 20:40:24.292:E/AndroidRuntime(536):在 dalvik.system.NativeStart.main( native 方法)
09-21 20:40:26.693: I/Process(536): 发送信号。 PID:536 SIG:9

最佳答案

从您的 logcat 和评论来看,我只能得出您的 _c 对象为空的结论。您应该查看您的代码并找到原因,或者发布一些相关代码以便我可以帮助您。

关于java - Android/Java - 调用随机函数只工作一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25963588/

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