【发布时间】:2011-07-18 22:56:14
【问题描述】:
我有一个字符串:
1,3,4,5,
1,4,5,0,
2,5,3,8,
我想存储在一个变量矩阵中 (int[][])。实现这一目标的最佳方法是什么?我应该使用String 类的方法吗?还是应该使用Regex?
【问题讨论】:
标签: java regex arrays string matrix
我有一个字符串:
1,3,4,5,
1,4,5,0,
2,5,3,8,
我想存储在一个变量矩阵中 (int[][])。实现这一目标的最佳方法是什么?我应该使用String 类的方法吗?还是应该使用Regex?
【问题讨论】:
标签: java regex arrays string matrix
首先(由String.split(..))split on newline,然后在, 上拆分每个结果数组的项目。然后使用Integer.parseInt(..)解析每一个
【讨论】:
String input = "1,3,4,5,\n1,4,5,0,\n2,5,3,8,";
String[] str1 = input.split("\n");
int[][] matrix = new int[str1.length][];
for (int i = 0; i < matrix.length; i++) {
String[] str2 = str1[i].split(",");
matrix[i] = new int[str2.length];
for (int j = 0; j < matrix[i].length; j++) {
matrix[i][j] = Integer.parseInt(str2[j]);
}
}
【讨论】:
StringTokenizer 实际上已被弃用:“建议任何寻求此功能的人改用 String 的 split 方法或 java.util.regex 包。”
StringTokenizer 替换为 String.split()。