Java 带有文本文件的并行数组

Java 带有文本文件的并行数组,java,arrays,arraylist,parallel-processing,Java,Arrays,Arraylist,Parallel Processing,我想组织一个包含多个数据的文本文件 A 33 9.25 V 92 1.123 H 100 2.4 成平行阵列 到目前为止,我已经声明了arraylist,我知道我需要使用while循环和hasnext做一些事情。。。不知道从那里去哪里 public static void main(String[] args) throws IOException { Scanner fileIn = new Scanner ( new File("sortdata.txt"));

我想组织一个包含多个数据的文本文件

A 33 9.25

V 92 1.123

H 100 2.4

成平行阵列

到目前为止,我已经声明了arraylist,我知道我需要使用while循环和hasnext做一些事情。。。不知道从那里去哪里

  public static void main(String[] args) throws IOException
  {
        Scanner fileIn = new Scanner ( new File("sortdata.txt"));

      ArrayList<Character> array1 = new ArrayList<Character>();
      ArrayList<Integer> array2 = new ArrayList<Integer>();
      ArrayList<Double> array3 = new ArrayList<Double>();


        while (fileIn.hasNext())
        String i = fileIn.next();
        int k = 0;
        for(i.index(k);i.length();i.index(k++))
            if (i.index(k) =='.')
        {

        }

            }
publicstaticvoidmain(字符串[]args)引发IOException
{
Scanner fileIn=new Scanner(新文件(“sortdata.txt”);
ArrayList array1=新的ArrayList();
ArrayList array2=新的ArrayList();
ArrayList array3=新的ArrayList();
while(fileIn.hasNext())
字符串i=fileIn.next();
int k=0;
for(i.index(k);i.length();i.index(k++)
如果(i.索引(k)='。)
{
}
}

我知道我的一些代码是错误的,但我已经看了很长时间了,我想我只是缺少了一些小的东西。

在阅读了文件中的每一行之后,
String I=fileIn.next()
trim()
字符串(按照建议消除前导空格和尾随空格),然后执行以下步骤

  • 使用
    String#Split()
    方法在空白处拆分字符串
  • 上面的split方法返回的字符串[]包含所需的所有3个数据
  • 从字符串[0]中,使用
    string.charAt(0)
    获取字符,并将其放入字符数组列表中
  • 使用
    Integer.parseInt(字符串[1])
    将字符串[1]解析为整数,并将其放入整数数组列表中
  • 使用
    Double.parseDouble(字符串[2])
    将字符串[2]解析为双精度数组,并将其放入双精度数组列表中
  • 这应该起作用:

    while (fileIn.hasNextLine()) {
             String c[]= fileIn.nextLine().split(" ");
             array1.add(new Character(c[0].charAt(0)));
             array2.add(new Integer(c[1].trim()));
             array3.add(new Double(c[2].trim()));
    
             }
    

    对于(i.index(k);i.length();i.index(k++))
    ,它意味着什么?首先修剪()它不是更好吗???@X86-很好的建议。将其纳入答案中!:)谢谢@R.J和@X86!我的教授并没有真正阐明如何做到这一点,似乎很简单,而不是基于“”进行拆分,将正则表达式与s+??@X86一起使用不是更好吗?甚至更好:)@rohithose谢谢!我知道你在那里做了什么,真的帮助简化了它