Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.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_String_Parsing - Fatal编程技术网

Java 如何扫描字符串中以逗号分隔的元素?

Java 如何扫描字符串中以逗号分隔的元素?,java,string,parsing,Java,String,Parsing,我有一组以下格式的字符串: {1, 20, 55, 4} {1} {90, 2} 括号内是用逗号分隔的数字。 我的目标是提取给定字符串的arity,换句话说,就是给定字符串中的元素数。 在第一种情况下为4,在第二种情况下为1和2。 考虑到括号,Java中检测逗号分隔元素的最佳方法是什么?最简单的方法是使用,例如s.split(“,”,-1).length 这是否是“最好”的方法还有争议 演示 输出 请给我们看一下您迄今为止尝试过的代码。什么括号?@vandench OP在说()括号(单数:括号

我有一组以下格式的字符串:

{1, 20, 55, 4}
{1}
{90, 2}
括号内是用逗号分隔的数字。 我的目标是提取给定字符串的arity,换句话说,就是给定字符串中的元素数。 在第一种情况下为4,在第二种情况下为1和2。
考虑到括号,Java中检测逗号分隔元素的最佳方法是什么?

最简单的方法是使用,例如
s.split(“,”,-1).length

这是否是“最好”的方法还有争议

演示

输出


请给我们看一下您迄今为止尝试过的代码。什么括号?@vandench OP在说
()
括号(单数:括号)时显然指的是
{}
括号。唯一的问题是
“{}”
应该是长度0。@ggorlen然后添加
if
语句。或条件运算符:
s.equals({}”)?0:s.split(“,”,-1).长度
String[] testData = { "{1, 20, 55, 4}", "{1}", "{90, 2}" };
for (String s : testData)
    System.out.println(s.split(",", -1).length);
4
1
2