gpt4 book ai didi

java - 将字符串解析为变量

转载 作者:行者123 更新时间:2023-12-02 01:58:05 24 4
gpt4 key购买 nike

我正在尝试将字符串解析为几个变量。该字符串可以包含这 4 个标记:“name、size、age、gender”,但它们不必全部存在。可能的字符串示例。

Example 1. "name:T-rex;"
Example 2. "name:T-rex;size:8;"
Example 3. "name:T-rex;age:4;gender:female"

我尝试这样做:

private String name;
private String size;
private String age;
private String gender;

private String parse(String data)
{
String [] parts = data.split(";");

name = parts[0];
size = parts[1];
age = parts[2];
gender = parts[3];
}

但这仅在字符串数据包含所有 4 个标记时才有效。我怎么解决这个问题?我确实需要这 4 个变量。

最佳答案

最好的方法是将字符串解析为键/值对,然后调用通过键设置它们的方法:

/**
* Set field based on key/value pair
*/
private void setValue(String key, String value) {
switch(key) {
case "name": {
this.name = value;
break;
}
case "age" : {
this.age = value;
break;
}
//...
}
}

并以编程方式调用它:

String[] k = "name:T-rex;age:4;gender:female".split(";");
for(String pair: k) {
String[] a = pair.split(":");
setValue(a[0], a[1]);
}

这使您可以灵活地进行操作,甚至允许丢失某些键。

关于java - 将字符串解析为变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52044971/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com