好的,所以我想创建一个整数矩阵,比如9个整数,有些是正数,有些是负数,如
int[][] myMatrix = {{1,5,-2},{7,9,3},{-4,-7,6}}
但我想声明一个大小为3 x 3的String矩阵,然后迭代整数矩阵,如果当前元素有一个正整数,则将单词POSITIVE放在String矩阵的相应元素中,否则放入NEGATIVE。当我运行整数矩阵时,我的代码打印得很好,但我很困惑如何编写矩阵的条件。我已经尝试过谷歌搜索,但没有。这是我的代码:
import java.util.Scanner;
import java.io.File;
import java.io.IOException;
public class 2D_Matrix {
public static void main(String[] args) throws IOException {
int [][] firstMatrix = {{1, 5, -2},{7, 9, 3},{-4 , -7, 6}};
String[][] secondMatrix = new String[3][3];
for (int x = 0; x < 3; ++x) {
for (int y = 0; y < 3; ++y) {
System.out.print(myMatrix[x][y] + "\t");
}
System.out.println();
}
}
}
我尝试了许多不同的组合,但没有任何作用或抛出错误。例如:
if(x < 0){
System.out.print("Negative");
}
else if(y < 0){
System.out.print("Negative");
}
else
{System.out.print("positive");
}
但它会抛出错误,指出y无法解析为变量。任何帮助将不胜感激。
答案 0 :(得分:2)
我认为你想要的是
for (int x = 0; x < 3; ++x) {
for (int y = 0; y < 3; ++y) {
if(firstMatrix[x][y] < 0)
secondMatrix[x][y] = "NEGATIVE";
else
secondMatrix[x][y] = "POSITIVE";
}
}
关于您的验证
if(x < 0){
}
else if(y < 0){
}
else
{
}
您正在验证索引,但数组的索引不能为负数。根据您的要求,您需要验证值是负数还是正数。请参阅我的代码段,了解如何检索价值并验证它们。