0

我正在处理txt包含 4 个布尔特征的文件行。我想将一个 boolean[] 传递给一个方法,并引用它来自哪一行(哪一行由该行上的另一个变量定义,该变量是增量的,但不一定是有序的)。

有没有办法创建一个数组,某种类型,引用行变量,然后是该行的 4 个布尔值?

如果不直接,我可以使用 0 和 1 分别代表 false 和 true,例如。array[i][0] = 0; 然后在接收方法中将其转换为布尔值:

boolean charone = (array[i][0] == 1) ? true : false;

编辑:特征表示线上的坐标是否最大为整个txt文件描述的符号。

Pattern patternx = Pattern.compile("(?<=(<))((-)*?(\\d+))(?=(,))"); 
Pattern patterny = Pattern.compile("(?<=(,))((-)*?(\\d+))(?=(>))");

for(String pin : pins){
        boolean sidemax = false;
        boolean sidemin = false;
        boolean top = false;
        boolean bottom = false;
        int i = Integer.parseInt(pin.split(" ")[1]);
        Matcher matcherx = patternx.matcher(pin);
        Matcher matchery = patterny.matcher(pin);

        while (matcherx.find()){

            String numb = matcherx.group(0);        
            int x = Integer.parseInt(numb);

            if (x >= maxx) {
                sidemax = true;
            }
            if (x <= minx){
                sidemin = true;
            }
        }
        while (matchery.find()){

            String numb = matchery.group(0);
            int y = Integer.parseInt(numb);

            if (y >= maxy) {
                top = true;
            }
            if (y <= miny) {
                bottom = true;
            } 
        }

有没有办法sidemax, sidemin, top, and bottom通过将它们直接添加到传入的每一行的数组中来实现另一种方法,这样数组将是二维的,顶层是参考,底层是 4 个布尔值?

4

1 回答 1

1

Java 是一种面向对象的语言。创建类来表示您的数据:

public class Line {
    private int lineNumber;
    private boolean value1;
    private boolean value2;
    private boolean value3;
    private boolean value4;

    // constructor, getters, other potential useful methods omitted
}

读取文件时,创建上述Line类的实例,并将这些实例传递给需要 4 个布尔值和它们来自的行号的方法。

于 2012-08-01T10:44:36.840 回答