gpt4 book ai didi

java - 读取新的随机数组变量后分数不增加 (Java) - Android Studio

转载 作者:行者123 更新时间:2023-12-01 09:18:25 27 4
gpt4 key购买 nike

有一个 9 个彩色方 block 的游戏。这些颜色中的随机一种以这 9 种颜色中的一种显示在屏幕上(例如:绿色中的“橙色”)。当用户点击与单词相对应的彩色方 block 时,用户将获得一分,忽略单词的颜色(例如,如果点击任何颜色的“橙色”并且点击橙色方 block ,则得分将增加一分)。所有这些颜色字符串都存储在一个数组中(colorString[])。当分数达到 10 时,我在每个按钮的 onClick 方法中向 colorString 数组引入新值。这些值是每个颜色字符串的加密版本。问题是,即使点击正确的颜色框来获取加密值,分数也不会高于 10。较新的数组值不起作用。一切都在下面的代码中进行了解释:

int score = 0;
Random colStr = new Random();
int decider = colStr.nextInt(9);

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_game3);



final Button loseStarter3;

loseStarter3 = (Button) findViewById(R.id.Starter3);
loseStarter3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
infoG3.setVisibility(View.GONE);
loseStarter3.setVisibility(View.GONE);
final TextView word = (TextView) findViewById(R.id.word);
word.setVisibility(View.VISIBLE);
greenButton.setVisibility(View.VISIBLE);
purpleButton.setVisibility(View.VISIBLE);
blueButton.setVisibility(View.VISIBLE);
blackButton.setVisibility(View.VISIBLE);
redButton.setVisibility(View.VISIBLE);
whiteButton.setVisibility(View.VISIBLE);
brownButton.setVisibility(View.VISIBLE);
orangeButton.setVisibility(View.VISIBLE);
yellowButton.setVisibility(View.VISIBLE);

final String[] colorString = new String[9];
colorString[0] = "yellow";
colorString[1] = "red";
colorString[2] = "green";
colorString[3] = "black";
colorString[4] = "white";
colorString[5] = "purple";
colorString[6] = "blue";
colorString[7] = "brown";
colorString[8] = "orange";
word.setText(colorString[decider]);

int[] androidColors = getResources().getIntArray(R.array.androidcolors);
int randomAndroidColor = androidColors[new Random().nextInt(androidColors.length)];
word.setTextColor(randomAndroidColor);

yellowButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (word.getText() == colorString[0] || word.getText() == colorString[9] || word.getText() == colorString[10] || word.getText() == colorString[11]) {
score++;
}
Random colStr = new Random();
if (score<=9) {
int decider = colStr.nextInt(9);
final String[] colorString = new String[9];
colorString[0] = "yellow";
colorString[1] = "red";
colorString[2] = "green";
colorString[3] = "black";
colorString[4] = "white";
colorString[5] = "purple";
colorString[6] = "blue";
colorString[7] = "brown";
colorString[8] = "orange";
word.setText(colorString[decider]);
}
if (score>9) {
int decider = colStr.nextInt(27)+9;
final String[] colorString = new String[36];
colorString[0] = "yellow";
colorString[1] = "red";
colorString[2] = "green";
colorString[3] = "black";
colorString[4] = "white";
colorString[5] = "purple";
colorString[6] = "blue";
colorString[7] = "brown";
colorString[8] = "orange";
colorString[9] = "weyoll";
colorString[10] = "loyelw";
colorString[11] = "oelwyl";
colorString[12] = "erd";
colorString[13] = "der";
colorString[14] = "edr";
colorString[15] = "enrge";
colorString[16] = "regne";
colorString[17] = "nerge";
colorString[18] = "lcbka";
colorString[19] = "alkcb";
colorString[20] = "cbakl";
colorString[21] = "ihewt";
colorString[22] = "thewi";
colorString[23] = "ewthi";
colorString[24] = "relppu";
colorString[25] = "ulrpep";
colorString[26] = "leprpu";
colorString[27] = "ebul";
colorString[28] = "lbeu";
colorString[29] = "ulbe";
colorString[30] = "rbwno";
colorString[31] = "wobnr";
colorString[32] = "onwrb";
colorString[33] = "agonre";
colorString[34] = "negrao";
colorString[35] = "greaon";
word.setText(colorString[decider]);
}

int[] androidColors = getResources().getIntArray(R.array.androidcolors);
int randomAndroidColor = androidColors[new Random().nextInt(androidColors.length)];
word.setTextColor(randomAndroidColor);
}
});

redButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (word.getText() == colorString[1]) {
score++;
}
Random colStr = new Random();
if (score<=9) {
int decider = colStr.nextInt(9);
final String[] colorString = new String[9];
colorString[0] = "yellow";
colorString[1] = "red";
colorString[2] = "green";
colorString[3] = "black";
colorString[4] = "white";
colorString[5] = "purple";
colorString[6] = "blue";
colorString[7] = "brown";
colorString[8] = "orange";
word.setText(colorString[decider]);
}
if (score>9) {
int decider = colStr.nextInt(27) + 9;
final String[] colorString = new String[36];
colorString[0] = "yellow";
colorString[1] = "red";
colorString[2] = "green";
colorString[3] = "black";
colorString[4] = "white";
colorString[5] = "purple";
colorString[6] = "blue";
colorString[7] = "brown";
colorString[8] = "orange";
colorString[9] = "weyoll";
colorString[10] = "loyelw";
colorString[11] = "oelwyl";
colorString[12] = "erd";
colorString[13] = "der";
colorString[14] = "edr";
colorString[15] = "enrge";
colorString[16] = "regne";
colorString[17] = "nerge";
colorString[18] = "lcbka";
colorString[19] = "alkcb";
colorString[20] = "cbakl";
colorString[21] = "ihewt";
colorString[22] = "thewi";
colorString[23] = "ewthi";
colorString[24] = "relppu";
colorString[25] = "ulrpep";
colorString[26] = "leprpu";
colorString[27] = "ebul";
colorString[28] = "lbeu";
colorString[29] = "ulbe";
colorString[30] = "rbwno";
colorString[31] = "wobnr";
colorString[32] = "onwrb";
colorString[33] = "agonre";
colorString[34] = "negrao";
colorString[35] = "greaon";
word.setText(colorString[decider]);
}

int[] androidColors = getResources().getIntArray(R.array.androidcolors);
int randomAndroidColor = androidColors[new Random().nextInt(androidColors.length)];
word.setTextColor(randomAndroidColor);
}
});

greenButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (word.getText() == colorString[2]) {
score++;
}
Random colStr = new Random();
if (score<=9) {
int decider = colStr.nextInt(9);
final String[] colorString = new String[9];
colorString[0] = "yellow";
colorString[1] = "red";
colorString[2] = "green";
colorString[3] = "black";
colorString[4] = "white";
colorString[5] = "purple";
colorString[6] = "blue";
colorString[7] = "brown";
colorString[8] = "orange";
word.setText(colorString[decider]);
}
if (score>9) {
int decider = colStr.nextInt(27) + 9;
final String[] colorString = new String[36];
colorString[0] = "yellow";
colorString[1] = "red";
colorString[2] = "green";
colorString[3] = "black";
colorString[4] = "white";
colorString[5] = "purple";
colorString[6] = "blue";
colorString[7] = "brown";
colorString[8] = "orange";
colorString[9] = "weyoll";
colorString[10] = "loyelw";
colorString[11] = "oelwyl";
colorString[12] = "erd";
colorString[13] = "der";
colorString[14] = "edr";
colorString[15] = "enrge";
colorString[16] = "regne";
colorString[17] = "nerge";
colorString[18] = "lcbka";
colorString[19] = "alkcb";
colorString[20] = "cbakl";
colorString[21] = "ihewt";
colorString[22] = "thewi";
colorString[23] = "ewthi";
colorString[24] = "relppu";
colorString[25] = "ulrpep";
colorString[26] = "leprpu";
colorString[27] = "ebul";
colorString[28] = "lbeu";
colorString[29] = "ulbe";
colorString[30] = "rbwno";
colorString[31] = "wobnr";
colorString[32] = "onwrb";
colorString[33] = "agonre";
colorString[34] = "negrao";
colorString[35] = "greaon";
word.setText(colorString[decider]);
}

int[] androidColors = getResources().getIntArray(R.array.androidcolors);
int randomAndroidColor = androidColors[new Random().nextInt(androidColors.length)];
word.setTextColor(randomAndroidColor);
}
});

/*etc... for other buttons, same contents but different color name*/

我知道我只使用过 ||黄色的其他数组值,这只是一个示例。 我还尝试使用 colorString[0] 下面的单独 if 语句来添加分数,当 == 到其他值时,以及 else if。两者都不起作用,他们只是让应用程序崩溃了。我也尝试过不同的按钮,但这并不应该有所作为。我尝试更改 if 语句所在的顺序,但又失败了。我花了一段时间试图解决这个问题,但不幸的是未能解决这个问题。

如果有人可以为我提供修复程序,以确保接受这些其他数组值,我将不胜感激。如果有什么我没有说清楚的,都在我发布的代码中显示。非常感谢。

更新的代码:

final String[] colorString1 = new String[9];
colorString1[0] = "yellow";
colorString1[1] = "red";
colorString1[2] = "green";
colorString1[3] = "black";
colorString1[4] = "white";
colorString1[5] = "purple";
colorString1[6] = "blue";
colorString1[7] = "brown";
colorString1[8] = "orange";
word.setText(colorString1[decider]);

final String[] colorString2 = new String[36];

int[] androidColors = getResources().getIntArray(R.array.androidcolors);
int randomAndroidColor = androidColors[new Random().nextInt(androidColors.length)];
word.setTextColor(randomAndroidColor);

yellowButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (word.getText().equals(colorString1[0])) {
score++;
}
if (word.getText().equals(colorString2[9])) {
score++;
}
if (word.getText().equals(colorString2[10])) {
score++;
}
if (word.getText().equals(colorString2[11])) {
score++;
}
Random colStr = new Random();
if (score<=9) {
int decider = colStr.nextInt(9);
final String[] colorString1 = new String[9];
colorString1[0] = "yellow";
colorString1[1] = "red";
colorString1[2] = "green";
colorString1[3] = "black";
colorString1[4] = "white";
colorString1[5] = "purple";
colorString1[6] = "blue";
colorString1[7] = "brown";
colorString1[8] = "orange";
word.setText(colorString1[decider]);
}
if (score>9) {
int decider = colStr.nextInt(27)+9;
final String[] colorString2 = new String[36];
colorString2[0] = "yellow";
colorString2[1] = "red";
colorString2[2] = "green";
colorString2[3] = "black";
colorString2[4] = "white";
colorString2[5] = "purple";
colorString2[6] = "blue";
colorString2[7] = "brown";
colorString2[8] = "orange";
colorString2[9] = "weyoll";
colorString2[10] = "loyelw";
colorString2[11] = "oelwyl";
colorString2[12] = "erd";
colorString2[13] = "der";
colorString2[14] = "edr";
colorString2[15] = "enrge";
colorString2[16] = "regne";
colorString2[17] = "nerge";
colorString2[18] = "lcbka";
colorString2[19] = "alkcb";
colorString2[20] = "cbakl";
colorString2[21] = "ihewt";
colorString2[22] = "thewi";
colorString2[23] = "ewthi";
colorString2[24] = "relppu";
colorString2[25] = "ulrpep";
colorString2[26] = "leprpu";
colorString2[27] = "ebul";
colorString2[28] = "lbeu";
colorString2[29] = "ulbe";
colorString2[30] = "rbwno";
colorString2[31] = "wobnr";
colorString2[32] = "onwrb";
colorString2[33] = "agonre";
colorString2[34] = "negrao";
colorString2[35] = "greaon";
word.setText(colorString2[decider]);
}

int[] androidColors = getResources().getIntArray(R.array.androidcolors);
int randomAndroidColor = androidColors[new Random().nextInt(androidColors.length)];
word.setTextColor(randomAndroidColor);
}
});

redButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (word.getText() == colorString1[1]) {
score++;
}
Random colStr = new Random();
if (score<=9) {
int decider = colStr.nextInt(9);
final String[] colorString1 = new String[9];
colorString1[0] = "yellow";
colorString1[1] = "red";
colorString1[2] = "green";
colorString1[3] = "black";
colorString1[4] = "white";
colorString1[5] = "purple";
colorString1[6] = "blue";
colorString1[7] = "brown";
colorString1[8] = "orange";
word.setText(colorString1[decider]);
}
if (score>9) {
int decider = colStr.nextInt(27)+9;
final String[] colorString2 = new String[36];
colorString2[0] = "yellow";
colorString2[1] = "red";
colorString2[2] = "green";
colorString2[3] = "black";
colorString2[4] = "white";
colorString2[5] = "purple";
colorString2[6] = "blue";
colorString2[7] = "brown";
colorString2[8] = "orange";
colorString2[9] = "weyoll";
colorString2[10] = "loyelw";
colorString2[11] = "oelwyl";
colorString2[12] = "erd";
colorString2[13] = "der";
colorString2[14] = "edr";
colorString2[15] = "enrge";
colorString2[16] = "regne";
colorString2[17] = "nerge";
colorString2[18] = "lcbka";
colorString2[19] = "alkcb";
colorString2[20] = "cbakl";
colorString2[21] = "ihewt";
colorString2[22] = "thewi";
colorString2[23] = "ewthi";
colorString2[24] = "relppu";
colorString2[25] = "ulrpep";
colorString2[26] = "leprpu";
colorString2[27] = "ebul";
colorString2[28] = "lbeu";
colorString2[29] = "ulbe";
colorString2[30] = "rbwno";
colorString2[31] = "wobnr";
colorString2[32] = "onwrb";
colorString2[33] = "agonre";
colorString2[34] = "negrao";
colorString2[35] = "greaon";
word.setText(colorString2[decider]);
}

int[] androidColors = getResources().getIntArray(R.array.androidcolors);
int randomAndroidColor = androidColors[new Random().nextInt(androidColors.length)];
word.setTextColor(randomAndroidColor);
}
});

greenButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (word.getText() == colorString1[2]) {
score++;
}
Random colStr = new Random();
if (score<=9) {
int decider = colStr.nextInt(9);
final String[] colorString1 = new String[9];
colorString1[0] = "yellow";
colorString1[1] = "red";
colorString1[2] = "green";
colorString1[3] = "black";
colorString1[4] = "white";
colorString1[5] = "purple";
colorString1[6] = "blue";
colorString1[7] = "brown";
colorString1[8] = "orange";
word.setText(colorString1[decider]);
}
if (score>9) {
int decider = colStr.nextInt(27)+9;
final String[] colorString2 = new String[36];
colorString2[0] = "yellow";
colorString2[1] = "red";
colorString2[2] = "green";
colorString2[3] = "black";
colorString2[4] = "white";
colorString2[5] = "purple";
colorString2[6] = "blue";
colorString2[7] = "brown";
colorString2[8] = "orange";
colorString2[9] = "weyoll";
colorString2[10] = "loyelw";
colorString2[11] = "oelwyl";
colorString2[12] = "erd";
colorString2[13] = "der";
colorString2[14] = "edr";
colorString2[15] = "enrge";
colorString2[16] = "regne";
colorString2[17] = "nerge";
colorString2[18] = "lcbka";
colorString2[19] = "alkcb";
colorString2[20] = "cbakl";
colorString2[21] = "ihewt";
colorString2[22] = "thewi";
colorString2[23] = "ewthi";
colorString2[24] = "relppu";
colorString2[25] = "ulrpep";
colorString2[26] = "leprpu";
colorString2[27] = "ebul";
colorString2[28] = "lbeu";
colorString2[29] = "ulbe";
colorString2[30] = "rbwno";
colorString2[31] = "wobnr";
colorString2[32] = "onwrb";
colorString2[33] = "agonre";
colorString2[34] = "negrao";
colorString2[35] = "greaon";
word.setText(colorString2[decider]);
}

int[] androidColors = getResources().getIntArray(R.array.androidcolors);
int randomAndroidColor = androidColors[new Random().nextInt(androidColors.length)];
word.setTextColor(randomAndroidColor);
}
});
/* same for other colored buttons */

最佳答案

当您比较字符串时,您可以使用“==”(这意味着您正在比较两个对象的引用),您应该使用“equals”方法来检查两个值是否相等。

关于java - 读取新的随机数组变量后分数不增加 (Java) - Android Studio,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40349463/

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