【发布时间】:2018-12-21 14:01:36
【问题描述】:
我在 java 中遇到以下问题:
我正在尝试创建一个二进制矩阵,其中输入是一对数组
ArrayList<Pair<String, String>> inputArray = new ArrayList<Pair<String, String>>();
所以可以说它看起来像这样:
[(argument1, value1),
(argument1, value2),
(argument1, value4),
(argument2, value2),
(argument2, value4),
(argument3, value1),
(argument3, value2),
(argument3, value3),]
预期的输出是:
value1 value2 value3 value4
argument1 1 1 0 1
argument2 0 1 0 1
argument3 1 1 1 0
我知道这个论坛上有关于如何创建二进制数组的答案,但我没有找到任何关于如何使用一对数组来完成的内容。
提前感谢您的任何提示。
输出
short[][] matrix = new short[rows][columns];
【问题讨论】:
-
对输出结构的要求?
-
所以输出应该是:
short[][] binaryMatrix = new short[count(arguments)][count(values)]; -
您不能使用
short数组,因为您会丢失“argument1”和“value1”字符串?或者你不需要保留字符串,只想要一个 0/1 数组? -
这里是
short[][]的解决方案,如果需要保留字符串,Map<String,Map<String,Integer>>的解决方案 -
认真的吗?您似乎可以使用仅提供保持您的价值观的结构的解决方案,您从不谈论打印,对,考虑投票也可能