Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将数组传递给方法和错误_Java_Arrays_Methods - Fatal编程技术网

Java 将数组传递给方法和错误

Java 将数组传递给方法和错误,java,arrays,methods,Java,Arrays,Methods,因此,我有一个java程序包,它应该用来制作标签。我想用一种方法,但我不确定哪里不对,但我很确定这与我的方法有关 我现在遇到的错误是 错误:找不到符号,它引用了7个数组 import javax.swing.JOptionPane; 公共类邮购实践{ 公共静态void main(字符串[]args){ //声明变量 字符串nameAddressArray[]=新字符串[7]; 字符串输入; 内特牛; 字符串enter=“Y”; 整数计数器; getLabelData(); numBoxesInp

因此,我有一个java程序包,它应该用来制作标签。我想用一种方法,但我不确定哪里不对,但我很确定这与我的方法有关

我现在遇到的错误是
错误:找不到符号,它引用了7个数组

import javax.swing.JOptionPane;
公共类邮购实践{
公共静态void main(字符串[]args){
//声明变量
字符串nameAddressArray[]=新字符串[7];
字符串输入;
内特牛;
字符串enter=“Y”;
整数计数器;
getLabelData();
numBoxesInput=JOptionPane
.showInputDialog(“按顺序输入框数:”);
numBoxes=Integer.parseInt(numBoxesInput);
//开始确定用户何时完成输入的外部循环逻辑
//邮购
while(输入另一个.equalsIgnoreCase(“Y”)){
计数器=1;
//开始内部循环以显示标签并递增计数器

while(counternameAddressArray是在main方法本地声明的。您可以将其作为类级变量或将其作为参数传递给getLabelData。

更改
getLabelData
以声明、实例化和
返回数组。然后将引用保存在
main
中。在
main
中,如下所示:

String nameAddressArray[] = getLabelData();
getLabelData
可能看起来像

public static String[] getLabelData() {
    String[] nameAddressArray = new String[7];
    nameAddressArray[0] = JOptionPane.showInputDialog("Enter title (Mr., Ms., Dr., "
            + "etc.): ");
    nameAddressArray[1] = JOptionPane.showInputDialog("Enter first name: ");
    nameAddressArray[2] = JOptionPane.showInputDialog("Enter lastname: ");
    nameAddressArray[3] = JOptionPane.showInputDialog("Enter street address: ");
    nameAddressArray[4] = JOptionPane.showInputDialog("Enter city: ");
    nameAddressArray[5] = JOptionPane.showInputDialog("Enter state (IL, MO, etc.): ");
    nameAddressArray[6] = JOptionPane.showInputDialog("Enter zip (e.g., 62025): ");
    return nameAddressArray;
}
您还可以使用循环来构建提示

static String[] prompts = { "title (Mr., Ms., Dr., etc.)", "first name", "lastname", //
        "street address", "city", "state (IL, MO, etc.)", "zip (e.g., 62025)" };
public static String[] getLabelData() {
    String[] nameAddressArray = new String[7];
    for (int i = 0; i < nameAddressArray.length; i++) {
        nameAddressArray[i] = String.format("Enter %s: ", prompts[i]);
    }
    return nameAddressArray;
}
静态字符串[]提示={“头衔(先生、女士、博士等)”,“名字”、“姓氏”//
“街道地址”、“城市”、“州(伊利诺伊州、密苏里州等)”、“邮政编码(如62025)”;
公共静态字符串[]getLabelData(){
String[]nameAddressArray=新字符串[7];
for(int i=0;i
谢谢,我认为我做得很对,几乎成功了。现在唯一的问题是在输出之前要问两次7个数组问题。希望我能弄明白,谢谢
static String[] prompts = { "title (Mr., Ms., Dr., etc.)", "first name", "lastname", //
        "street address", "city", "state (IL, MO, etc.)", "zip (e.g., 62025)" };
public static String[] getLabelData() {
    String[] nameAddressArray = new String[7];
    for (int i = 0; i < nameAddressArray.length; i++) {
        nameAddressArray[i] = String.format("Enter %s: ", prompts[i]);
    }
    return nameAddressArray;
}