如何在 Java 中定义公共字符串变量?

问题描述

我想在 for 循环中创建一个公共字符串变量,我什至可以在它之外使用它。我知道这在 C# 中是可能的,只需将字符串标记为公共,但在 Java 中做同样的事情不会似乎可以解决问题。有什么建议吗?

for (int i = 0; i < answerList.size(); i++) {
    System.out.println(answerList.get(i).q);
    answerList.get(i).spot = i;
    System.out.println(answerList.get(i).spot);
    switch (answerList.get(i).spot) {
        case 0:
            if(answerList.get(i).correct = true) {
                String correctAns = "a";
                String correctAnsVariantTwo = "A";
                break;
            }
        case 1:
            if(answerList.get(i).correct = true) {
                String correctAns = "b";
                String correctAnsVariantTwo = "B";
                break;
            }
        case 2:
            if(answerList.get(i).correct = true) {
                String correctAns = "c";
                String correctAnsVariantTwo = "C";
                break;
            }
        case 3:
            if(answerList.get(i).correct = true) {
                String correctAns = "d";
                String correctAnsVariantTwo = "D";
                break;
            }
    }
}
Scanner a = new Scanner(system.in);
String ats = a.nextLine();
if(ats.equals(correctAns)) {
    //do something
}

解决方法

你能做的就是在循环外声明那个变量,即使它是空的,并在你需要的时候给它一个值(最好在开始时这样做,但在循环中这样做是有效的。它是当我需要处理循环内外的变量时,我会怎么做。

,

我在 switch 语句之外声明了字符串,现在一切正常。