有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java阵列?args数组?

我正在开发一个通讯录程序,它读取csv文件并打印联系人,包括他们的姓、名、地址、城市、州、邮编和电话号码。我已经得到了一段代码开始,我已经使这部分代码的工作

到目前为止,我已经读取了该文件并将内容写入了一个新文件。然而,代码中有一部分我并不完全确定它是做什么的。因为我是编程新手,我不想把简单有效的代码拼凑在一起,我想了解发生了什么。 我感到困惑的部分就在主要陈述之后 (main后面的前9行开始于字符串[]lname、fname、street…..)

请,任何帮助都将不胜感激

public class Main 
{
public static void main (String [] args) throws FileNotFoundException
{
    String [] lName, fName, street, city, state, zip, phone;

    lName = new String[20];
    fName = new String[20];
    street = new String[50];
    city = new String[20];
    state = new String[20];
    zip = new String[12];

    System.out.println("ADDRESS BOOK CONTENTS: ");

    Scanner inFile;

    try 
    {
        inFile = new Scanner (new File("src/addresses.csv"));
        String temp;

        while (inFile.hasNextLine())
        {
            temp = inFile.nextLine();
            System.out.println("Contact:    " + temp);              
        }   

        System.out.println(inFile);


    }

        catch (FileNotFoundException e) 
        {
            //catch block
            e.printStackTrace();
        }
    try
    {
    FileInputStream fileIn = new FileInputStream("src/addresses.csv");
    FileOutputStream fileOut = new FileOutputStream("src/newfile.csv");

    int c;
    while ((c = fileIn.read()) != -1)
    {
        fileOut.write(c);
    }

    fileIn.close();
    fileOut.close();
    }

     catch (FileNotFoundException exception1) 
      {
         System.err.println("FileCopy: " + exception1);
      } 
      catch (IOException exception1) 
      {
         System.err.println("FileCopy: " + exception1);
      }

}
}

共 (2) 个答案

  1. # 1 楼答案

    这只是声明了一些类型为String[]的变量,这是一个字符串数组

    以下几行为这些变量分配了一个新的array和一个初始容量

    该语法首先声明变量,然后赋值,但也可以在一条语句中进行声明和赋值,如下所示:

    String[] lName = new String[20];
    

    这两种语法是等价的

  2. # 2 楼答案

    这部分代码是一个数组创建语句

    lName = new String[20];
    

    意味着创建一个包含20个元素的新字符串数组,并将其分配给变量lName

    首先,我再给你们几个数组示例:

    lName[4] = "john";
    

    意味着将字符串值“john”分配给数组的第5个(不是第4个)元素

    String name = lName[0];
    

    表示检索数组的第一个元素并将其分配给名为name的变量