Java 很多;。“预期类别”;及;不是一份声明”;

Java 很多;。“预期类别”;及;不是一份声明”;,java,Java,我正在制作一个程序,接受两个3x3矩阵,然后将它们相加或相乘。我有三个不同的错误 首先,当我试图创建一个字符串以在这些行中显示整个矩阵时,会出现一系列“.class expected”错误: strA = "\n\n|" + r1a[]; strA += "|\n|" + r2a[]; strA += "|\n|" + r3a[]; 当我为strB和strC执行其他2次迭代时,它会重复。 当我查找这个错误时,我发现这些可能是它发生的原因,在扫描我的代码时,这些可能都不是问题: Usually

我正在制作一个程序,接受两个3x3矩阵,然后将它们相加或相乘。我有三个不同的错误

首先,当我试图创建一个字符串以在这些行中显示整个矩阵时,会出现一系列“.class expected”错误:

strA = "\n\n|" + r1a[];
strA += "|\n|" + r2a[];
strA += "|\n|" + r3a[];

当我为strB和strC执行其他2次迭代时,它会重复。
当我查找这个错误时,我发现这些可能是它发生的原因,在扫描我的代码时,这些可能都不是问题:

Usually this is just a missing semicolon,
sometimes it can be caused by unbalanced () on the previous line.
sometimes it can be cause by junk on the previous line. This junk might be far to the right off the screen.
Sometimes it is caused by spelling the keyword if incorrectly nearby.
Sometimes it is a missing + concatenation operator.

我的下一个问题是当我尝试创建结果矩阵时。我在这段代码中得到了“nota statement”和“expected”的混合错误:

r1c[] = r1a[] + r1b[];
r2c[] = r2a[] + r2b[];
r3c[] = r3a[] + r3b[];

错误交替出现;编译器首先生成“nota statement”,在r1c[]的左括号中有一个箭头,然后生成“expected”,在r1c[]=之间的空格中有一个箭头。第二次和第三次出现只是在代码中移动,重复位置(左括号、空格)。感谢tacp解决了这个问题

这就是我声明所有变量的方式:

import javax.swing.JOptionPane;

public class Matrices
{

    public static void main(String[] args)
    {


       int i = 0;
       double[] r1a = new double[3];        //row 1 of matrix a
       double[] r2a = new double[3];        //row 2 of matrix a
       double[] r3a = new double[3];        //row 3 of matrix a
       double[] r1b = new double[3];        //row 1 of matrix b
       double[] r2b = new double[3];        //row 2 of matrix b
       double[] r3b = new double[3];        //row 3 of matrix b
       double[] r1c = new double[3];        //row 1 of matrix c
       double[] r2c = new double[3];        //row 2 of matrix c
       double[] r3c = new double[3];        //row 3 of matrix c

       String strInput,         //holds JOption inputs
       strA,                    //holds matrix A
       strB,                    //holds matrix B
       strC;                    //holds matrix C

我真的不确定我做错了什么。以下是我所有的代码..:p
这可能是一些非常基本的东西,但这是我第一个学期的编码,有史以来,在任何语言。。因此,我的故障排除技能是最低限度的,我的实际编码技能也是最低限度的。哈哈

因此,非常感谢您的帮助

 strA = "\n\n|" + r1a[];
 strA += "|\n|" + r2a[];
 strA += "|\n|" + r3a[];
您需要为
strA
指定类型,并指定索引以访问
r1a、r2a
r3a

类似地,您需要索引来访问数组(它们是表示矩阵行的数组):

例如:

for (int i = 0; i < 3; ++i)
{
   r1c[i] = r1a[i] + r1b[i];
}
for(int i=0;i<3;++i)
{
r1c[i]=r1a[i]+r1b[i];
}
您需要为
strA
指定类型,并指定索引以访问
r1a、r2a
r3a

类似地,您需要索引来访问数组(它们是表示矩阵行的数组):

例如:

for (int i = 0; i < 3; ++i)
{
   r1c[i] = r1a[i] + r1b[i];
}
for(int i=0;i<3;++i)
{
r1c[i]=r1a[i]+r1b[i];
}


r1a[]+r1b[]应该是什么?并将
r1a[]
添加到字符串中?是否尝试将字符串附加到方法体外部的类变量字符串中?这将导致您看到的一些编译器错误。在问题中添加类的签名和所有变量的声明。为了简洁起见,您可以省略这些方法。以下是如何声明多维数组,例如:
double[]anArray=new double[5][5]
。这将创建5行和5列。并用它们的行-列组合引用它们。r1a[]+r1b[]应该将这两个数组相加。。。我正在尝试将r1a[]添加到字符串中,以便可以显示它,而不是尝试使用它进行计算。我拥有的唯一方法是main,类之外唯一的东西是import javax.swing.JOptionPane;陈述我不知道你所说的班级签名是什么意思。请张贴完整的班级代码。我想你们是在做方法之外的计算。
r1a[]+r1b[]
应该是什么?并将
r1a[]
添加到字符串中?是否尝试将字符串附加到方法体外部的类变量字符串中?这将导致您看到的一些编译器错误。在问题中添加类的签名和所有变量的声明。为了简洁起见,您可以省略这些方法。以下是如何声明多维数组,例如:
double[]anArray=new double[5][5]
。这将创建5行和5列。并用它们的行-列组合引用它们。r1a[]+r1b[]应该将这两个数组相加。。。我正在尝试将r1a[]添加到字符串中,以便可以显示它,而不是尝试使用它进行计算。我拥有的唯一方法是main,类之外唯一的东西是import javax.swing.JOptionPane;陈述我不知道你所说的班级签名是什么意思。请张贴完整的班级代码。我想你们是在做方法之外的计算。对不起,你们所说的指定类型和索引是什么意思?另外,是否有一种简单的方法可以将整个数组添加到另一个数组中?我必须通过for循环将单个的double相互添加吗?@Riqqu类型的变量表示可以对它们应用什么类型的操作。例如,int a表示a是int,可以对其进行+、-、*、/或%运算。所以strA应该是字符串类型。在Java中,要将两个数组添加到另一个数组中,应该使用for循环或for each循环。字符串输入、strA、strB、strC@好的。您需要索引才能访问数组元素,例如:A是数组,A[]不会直接访问元素,您需要指定索引,比如说,A[0]才能访问第一个元素,等等。啊!你让我想起了课堂!我忘了,但是我们的教授在《传递内存泄漏》一书中提到了,我相信这就是我试图通过获取一个数组并将其放入另一个数组中来实现的。哈哈,谢谢,我会看看这是否能修复一些错误。对不起,指定类型和索引是什么意思?另外,是否有一种简单的方法可以将整个数组添加到另一个数组中?我必须通过for循环将单个的double相互添加吗?@Riqqu类型的变量表示可以对它们应用什么类型的操作。例如,int a表示a是int,可以对其进行+、-、*、/或%运算。所以strA应该是字符串类型。在Java中,要将两个数组添加到另一个数组中,应该使用for循环或for each循环。字符串输入、strA、strB、strC@好的。您需要索引才能访问数组元素,例如:A是数组,A[]不会直接访问元素,您需要指定索引,比如说,A[0]才能访问第一个元素,等等。啊!你让我想起了课堂!我忘了,但是我们的教授在《传递内存泄漏》一书中提到了,我相信这就是我试图通过获取一个数组并将其放入另一个数组中来实现的。哈