Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将一个值分配给多个变量_Java - Fatal编程技术网

Java 如何将一个值分配给多个变量

Java 如何将一个值分配给多个变量,java,Java,我想接收一个值,它表示多个变量。例如 我收到110200john的信 该值直接传递给多个变量,如 int x = 11 double y = 0200 string name = john 我该怎么做 我可以使用枚举吗 enum data { int x ; double y ; string name ; } 我还接收字节格式的值 谢谢你们的帮助,伙计们,如果这三个值有意义的话,你们几乎肯定应该创建一个类来表示这三个值。然后我个人会编写一个静态parse方法。比如: public fi

我想接收一个值,它表示多个变量。例如 我收到110200john的信 该值直接传递给多个变量,如

int x = 11
double y = 0200
string name = john
我该怎么做

我可以使用枚举吗

enum data {
 int x ;
double y ;
string name ;

}
我还接收字节格式的值


谢谢你们的帮助,伙计们,如果这三个值有意义的话,你们几乎肯定应该创建一个类来表示这三个值。然后我个人会编写一个静态
parse
方法。比如:

public final class Person {
    private final int x;
    private final double y;
    private final String name;

    public Person(int x, double y, String name) {
        this.x = x;
        this.y = y;
        this.name = name;
    }

    public static Person parse(String text) {
        int x = Integer.parseInt(text.substring(0, 2));
        double y = Double.parseDouble(text.substring(2, 6));
        String name = text.substring(6);
        return Person(x, y, name);
    }

    // TODO: Getters or whatever is required
}

这假设字符串的格式始终是xxyyyyname-基本上,您应该使用
子字符串
和其他各种可用的解析方法来调整
解析
方法以适应这种情况。

如果这三个值有意义的话,您几乎肯定应该创建一个类来表示这三个值。然后我个人会编写一个静态
parse
方法。比如:

public final class Person {
    private final int x;
    private final double y;
    private final String name;

    public Person(int x, double y, String name) {
        this.x = x;
        this.y = y;
        this.name = name;
    }

    public static Person parse(String text) {
        int x = Integer.parseInt(text.substring(0, 2));
        double y = Double.parseDouble(text.substring(2, 6));
        String name = text.substring(6);
        return Person(x, y, name);
    }

    // TODO: Getters or whatever is required
}


这假设字符串的格式始终为xxyyyyname-基本上,您应该使用
子字符串
和其他各种可用的解析方法调整
解析
方法以适应这种情况。

是否有任何特定的输入模式?对于此输入,可以基于字符数拆分。或者为SAME编写一个正则表达式模式。我建议为该应用程序使用数组、集合或对象。在不同变量之间需要一个分隔符,而不需要任何代码?那是不可能的。您必须为此编写一些代码。我可以使用ENUM或structure吗?是否有任何特定的模式需要输入?对于此输入,可以基于字符数拆分。或者为SAME编写一个正则表达式模式。我建议为该应用程序使用数组、集合或对象。在不同变量之间需要一个分隔符,而不需要任何代码?那是不可能的。您必须为此编写一些代码。我可以使用枚举或结构吗?使用扫描仪分析单词可能更简单;)@彼得拉维:鉴于你的笑脸,我不确定你有多认真——但以防万一,为了未来读者的利益,我的经验是,基于SO的问题,
Scanner
极易出错。。。我尽量避免使用它。我本以为扫描仪不太容易出错。e、 例如,如果您有一个int或double,它的长度不同。(代码)是因为您一定有很好的理由不使用它。@PeterLawrey:在给出的示例字符串中,我假设字段必须是固定长度的-没有明显的分隔符,双精度的前导是0…@user3003395:为什么您会沉迷于使用枚举?这显然不合适。你说的“结构”是什么意思?类在Java中是一种数据结构——它不像C#那样也有结构……使用Scanner解析单词可能更简单;)@彼得拉维:鉴于你的笑脸,我不确定你有多认真——但以防万一,为了未来读者的利益,我的经验是,基于SO的问题,
Scanner
极易出错。。。我尽量避免使用它。我本以为扫描仪不太容易出错。e、 例如,如果您有一个int或double,它的长度不同。(代码)是因为您一定有很好的理由不使用它。@PeterLawrey:在给出的示例字符串中,我假设字段必须是固定长度的-没有明显的分隔符,双精度的前导是0…@user3003395:为什么您会沉迷于使用枚举?这显然不合适。你说的“结构”是什么意思?类在Java中是一种数据结构-它不像C#那样也有结构。。。