如何在Java中只声明一次具有特定索引的数组?
我用各种方法来创造一个选择你自己的冒险故事。其中一种方法如下:如何在Java中只声明一次具有特定索引的数组?,java,arrays,methods,Java,Arrays,Methods,我用各种方法来创造一个选择你自己的冒险故事。其中一种方法如下: public static void storeChoices(){ Scanner sc = new Scanner(System.in); String arr [] = new String[6]; if(arr[0] == null){ arr[0] = "Gucci"; arr[1] = "Tesla"; arr[2] = "Canada Goose"; arr[3] = "Rolex"; ar
public static void storeChoices(){
Scanner sc = new Scanner(System.in);
String arr [] = new String[6];
if(arr[0] == null){
arr[0] = "Gucci";
arr[1] = "Tesla";
arr[2] = "Canada Goose";
arr[3] = "Rolex";
arr[4] = "Saks Fifth Avenue";
arr[5] = "Nike";
}
for(int i = 0; i < arr.length; i++){
System.out.println(" " + (i+1) + ")" + arr[i]);
}
System.out.println("Pick a number as your choice: ");
int choice = sc.nextInt();
sc.nextLine();
for(int x = 0; x < arr.length; x++){
arr[choice] = "Dr. Java has already visited this store";
}
}
publicstaticvoidstorechoices(){
扫描仪sc=新的扫描仪(System.in);
字符串arr[]=新字符串[6];
if(arr[0]==null){
arr[0]=“古驰”;
arr[1]=“特斯拉”;
arr[2]=“加拿大鹅”;
arr[3]=“劳力士”;
arr[4]=“萨克斯第五大道”;
arr[5]=“耐克”;
}
对于(int i=0;i
我只想在开始时声明数组一次,因为它会根据用户选择的选项而变化。每次我再次调用该方法时,声明数组会导致我所做的任何更改重置。如何只声明该数组一次,以便在调用该方法时不会重置所做的更改?我刚刚学习了一些方法,所以我对这方面还很陌生。如果您没有使用线程机制,那么将其声明为类的静态变量
public class TestClass1 {
static String arr [] = new String[6];
public static void storeChoices(){
Scanner sc = new Scanner(System.in);
if(arr[0] == null){
arr[0] = "Gucci";
arr[1] = "Tesla";
arr[2] = "Canada Goose";
arr[3] = "Rolex";
arr[4] = "Saks Fifth Avenue";
arr[5] = "Nike";
}
for(int i = 0; i < arr.length; i++){
System.out.println(" " + (i+1) + ")" + arr[i]);
}
System.out.println("Pick a number as your choice: ");
int choice = sc.nextInt();
sc.nextLine();
for(int x = 0; x < arr.length; x++){
arr[choice] = "Dr. Java has already visited this store";
}
}
公共类TestClass1{
静态字符串arr[]=新字符串[6];
公共静态void storeChoices(){
扫描仪sc=新的扫描仪(System.in);
if(arr[0]==null){
arr[0]=“古驰”;
arr[1]=“特斯拉”;
arr[2]=“加拿大鹅”;
arr[3]=“劳力士”;
arr[4]=“萨克斯第五大道”;
arr[5]=“耐克”;
}
对于(int i=0;i
}在非常简单的情况下,只需将其定义为字段,然后检查是否为null
public class Main {
String [] arr = null;
public static void main(final String[] args) {
new Main().myMethod ();
}
private void myMethod () {
if (arr == null) {
arr = new String [] {"Gucci" , "Tesla", "Canada Goose"};
}
}
}
从局部变量到字段的更改在方法之外声明它我该怎么做?这给了我一大堆错误谢谢你的快速回答!