gpt4 book ai didi

java - 不兼容类型的双数组和属性 string.split()

转载 作者:行者123 更新时间:2023-11-29 06:13:52 25 4
gpt4 key购买 nike

public static void main(String[] args)
{
String input="jack=susan,kathy,bryan;david=stephen,jack;murphy=bruce,simon,mary";
String[][] family = new String[50][50];

//assign family and children to data by ;
StringTokenizer p = new StringTokenizer (input,";");
int no_of_family = input.replaceAll("[^;]","").length();
no_of_family++;
System.out.println("family= "+no_of_family);
String[] data = new String[no_of_family];
int i=0;
while(p.hasMoreTokens())
{
data[i] = p.nextToken();
i++;
}

for (int j=0;j<no_of_family;j++)
{
family[j][0] = data[j].split("=")[0];
//assign child to data by commas
StringTokenizer v = new StringTokenizer (data[j],",");
int no_of_child = data[j].replaceAll("[^,]","").length();
no_of_child++;

System.out.println("data from input = "+data[j]);
for (int k=1;k<=no_of_child;k++)
{

family[j][k]= data[j].split("=")[1].split(",");
System.out.println(family[j][k]);
}

}

}

我在输入字符串中有一个家族列表,我将其分成一个家族,我想在双数组 family[i][j] 中进行。

我的目标是:

family[0][0]=1st father's name
family[0][1]=1st child name
family[0][2]=2nd child name and so on...

family[0][0]=jack
family[0][1]=susan
family[0][2]=kathy
family[0][3]=bryan
family[1][0]=david
family[1][1]=stephen
family[1][2]=jack
family[2][0]=murphy
family[2][1]=bruce
family[2][2]=simon
family[2][3]=mary

但是我得到了标题的错误:在兼容的类型中发现:java.lang.String[]要求:java.lang.Stringfamily[j][k]= data[j].split("=")[1].split(",");

我能做什么?我需要帮助

有人知道如何为这个输入使用 StringTokenizer 吗?

最佳答案

试图理解为什么不能对嵌套操作也使用拆分。

例如,像这样的东西应该可以正常工作

for (int j=0;j<no_of_family;j++)
{
String[] familySplit = data[j].split("=");

family[j][0] = familySplit[0];

String[] childrenSplit = familySplit[1].split(",");
for (int k=0;k<childrenSplit.length;k++)
{

family[j][k+1]= childrenSplit[k];
}

}

关于java - 不兼容类型的双数组和属性 string.split(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5798366/

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