1

我是 Java 新手,我想将诸如Apple\tJohn\t23(注意\t是制表符) 之类的字符串转换为具有 3 个元素的数组{Apple, John, 23}。我知道我需要导入一些字符串操作方法,但我才刚开始使用 Java,所以有没有适合我的情况?

4

2 回答 2

3

听起来你想要:

String[] bits = text.split("\t");

请注意,这split需要一个正则表达式 - 所以如果你想在一个点上分割,你需要split("\\.")例如。我个人更喜欢GuavaSplitter类,但这是你的选择:)

编辑:来自评论:

您还建议我使用字符串数组来存储整数和字符值的混合吗?说为了防患于未然,我可能想比较一下如果(年龄> 21)那么约翰可以喝酒。

不可以。将数据拆分为字符串数组后,最好将其转换为专门用于该数据的对象。例如:

String[] bits = text.split("\t");
// Assuming a suitable constructor...
Person person = new Person(bits[1], bits[0], Integer.parseInt(bits[2]));
System.out.println(person.getFavouriteFruit()); // Apple
于 2012-09-11T13:20:16.367 回答
1

使用String.split()

String str = "Apple\tJohn\t23";
    String[] parts = str.split("\t");
    System.out.println(Arrays.toString(parts));

例如,字符串“boo:and:foo”通过这些表达式产生以下结果:

Regex   Result
:   { "boo", "and", "foo" }
o   { "b", "", ":and:f" }
于 2012-09-11T13:22:11.340 回答