读取一个输入文本文件,并在java中选择2个不同数组中的标记

读取一个输入文本文件,并在java中选择2个不同数组中的标记,java,arrays,Java,Arrays,我对java非常陌生,所以如果有明显的错误,请忽略。如果我的问题似乎多余,那么请引导我找到正确的链接。然而,为了找到答案,我已经冲浪够多了。 我正在读取输入文件并将其元素存储在二维数组中。我要做的是将该数组拆分为两个单独的数组。第一个数组将包含代码中的所有“firstDimension”字符。现在,我想要另一个数组,它将所有整数存储在一个数组中。我只需要打印那些数组。应在观察到特殊字符“>”后立即创建此数组。 这可以通过两种方式完成: 读取文件中的字符串并将所有元素存储在二维数组中,然后将数组分

我对java非常陌生,所以如果有明显的错误,请忽略。如果我的问题似乎多余,那么请引导我找到正确的链接。然而,为了找到答案,我已经冲浪够多了。
我正在读取输入文件并将其元素存储在二维数组中。我要做的是将该数组拆分为两个单独的数组。第一个数组将包含代码中的所有“firstDimension”字符。现在,我想要另一个数组,它将所有整数存储在一个数组中。我只需要打印那些数组。应在观察到特殊字符“>”后立即创建此数组。
这可以通过两种方式完成:

  • 读取文件中的字符串并将所有元素存储在二维数组中,然后将数组分为1个双精度数组和1个二维字符数组

  • 从文件中只读字符并将其存储在字符数组中,然后从文件中只读双值并将其存储在不同的数组中

  • 我的输入文件包含以下文本:

    导入java.io.File;
    导入java.io.FileNotFoundException;
    导入java.util.ArrayList;
    导入java.util.Scanner;
    公共类定界符{
    公共静态void main(字符串[]args)
    {
    试一试{
    Scanner Scanner=新扫描仪(新文件(“hello.txt”);
    scanner.useDelimiter(System.getProperty(“line.separator”);
    ArrayList=新建ArrayList();
    while(scanner.hasNext()){
    list.add(scanner.next());
    }
    scanner.close();
    //最后将arraylist转换为char[][]
    char[][]firstDimension=new char[list.size()][];
    对于(int i=0;i
    我不知道是否有任何方法可以为您做到这一点,但您可以说

    if(var == 0 || 1 || 2 || 3 || 4 || 5 ) //all the way until you reach 9
    {
          //is a number and needs to be put in the double array
    }
    else //is a string
    
    • 编辑

    由于您将数据存储在数组中,因此可能必须使用BinarySearch方法。

    很抱歉,我刚刚添加了代码so。。问题是什么?问题是如何将数组拆分为两个单独的数组。第一个数组包含所有字符,第二个数组包含所有双精度值。如果代码有任何更改,我们将不胜感激。如果可以的话,请帮助我。谢谢你。我试试这个。
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.util.ArrayList;
    import java.util.Scanner;
    
    public class Delimiter {
        public static void main(String[] args)
        {
            try {
                Scanner scanner = new Scanner(new File("hello.txt"));
                scanner.useDelimiter(System.getProperty("line.separator"));
    
                ArrayList<String> list = new ArrayList<String>();
    
                while (scanner.hasNext()) {
                    list.add(scanner.next());
                }
                scanner.close();
    
                // finally convert the arraylist to a char[][]
                char[][] firstDimension = new char[list.size()][];
                for (int i = 0; i < list.size(); i++) {
                    firstDimension[i] = list.get(i).toCharArray();
                }
    
                for (int i = 0; i < firstDimension.length; i++)
                {
                    for (int j = 0; j < firstDimension[i].length; j++)
                    {
                        //System.out.println(firstDimension[i][j]);
                        System.out.print(" "+firstDimension[i][j]);
                        System.out.println("");
                    }
                }
    
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            }
        }
    }
    
    if(var == 0 || 1 || 2 || 3 || 4 || 5 ) //all the way until you reach 9
    {
          //is a number and needs to be put in the double array
    }
    else //is a string