首页 > 解决方案 > 字符串第二个值数组的 String.Split() 未保存到新变量

问题描述

例如,所有内容都在读取 lines[] 的值,但是当我尝试将其保存在变量中时,它并没有保存第二个值。像 lines[1] 正在保存,但 lines[2] 没有保存。

        while ((line = reader.readLine()) != null) {
            lines = line.split("[:,]");

            for (int i = 0; i < lines.length; i++) {
                if(lines.length > 0) {
                    if(lines[0].contains("x")||lines[0].contains("y")) {
                        double x = Double.parseDouble(lines[1]);
                        double y = Double.parseDouble(lines[2]);
                    }

标签: javaregexsplit

解决方案


if I initialize the value of x and y initially then y is getting the value. I do not know why do i need to initialize? But i would like to know further...

package com.inputOutput;

import java.io.*; import java.util.Scanner;

public class RealMadrid {

public static void main(String[] args) throws IOException {
    double x=0;
    double y=0;
    BufferedReader reader = new BufferedReader(new FileReader("english.txt"));
    String[] lines = null;

    try {
        String line;
        while ((line= reader.readLine()) != null) {
            lines = line.split("[:,]");

            int i =0;
            if(lines.length>0){
                if(lines[0].contains("x")||lines[0].contains("y")) {
                     x = Double.parseDouble(lines[1]);
                     y = Double.parseDouble(lines[2]);
                }
            }
        }
    } finally {
        reader.close();
    }
}

}


推荐阅读