Java i和j没有被初始化。但我已经写了int I和int j。怎么了?

Java i和j没有被初始化。但我已经写了int I和int j。怎么了?,java,initialization,geometry,local-variables,Java,Initialization,Geometry,Local Variables,当我试图编译它时,Eclipse说I和j尚未初始化。我做错了什么?问题是如何创建一个圆 public class Question2 { public static void main(String[] args) { int x = 14; int y = 8; int radius = 5; DrawMeACircle(x,y,radius); } public static void Dr

当我试图编译它时,Eclipse说I和j尚未初始化。我做错了什么?问题是如何创建一个圆

public class Question2 
{

    public static void main(String[] args) {

        int x = 14;
        int y = 8;
        int radius = 5;


        DrawMeACircle(x,y,radius);

    }

    public static void DrawMeACircle(int x, int y, int radius)
    {

        int i, j;
        int gridsize = 99;
        int loop1;
        loop1 = ((x-i)*(x-i))+((y-j)*(y-j));
                // The problem is here (in the line above), it say i and j has not been initialized.

                int loop2 = loop1-radius*radius; 
                int c = radius-1; 

        for (i=0; i<gridsize; i++)
        {
            //System.out.print("#");
            for (j=0; j<gridsize; j++)
            {
                if(loop2 >=0 && loop2<= c )
                    {System.out.print("#");}
                else
                    {System.out.print(" ");}

            }
            System.out.print("\n"); 

        }
    }
}
公开课问题2
{
公共静态void main(字符串[]args){
int x=14;
int y=8;
int半径=5;
绘图圆(x,y,半径);
}
公共静态空心圆(整数x,整数y,整数半径)
{
int i,j;
int gridsize=99;
int-loop1;
loop1=((x-i)*(x-i))+((y-j)*(y-j));
//问题就在这里(在上面的一行中),它表示i和j尚未初始化。
int loop2=loop1半径*半径;
int c=半径-1;

对于(i=0;i局部变量,必须使用以下值初始化:

int i = 0;
int j = 0;

如果未显式初始化,则只有类int变量将设置为0。

必须使用以下值初始化局部变量:

int i = 0;
int j = 0;

如果未显式初始化,则只有类int变量将设置为0。

必须使用以下值初始化局部变量:

int i = 0;
int j = 0;

如果未显式初始化,则只有类int变量将设置为0。

必须使用以下值初始化局部变量:

int i = 0;
int j = 0;

如果未显式初始化,则只有类int变量将设置为0。

只需初始化
i和j

int i =0, j=0;
因为必须初始化局部变量

正如jcoder在相关问题中所回答的:

对象类型的实例变量默认初始化为 空。默认情况下,对象类型的局部变量未初始化 访问未定义的变量是编译时错误

此外,还表示:-

局部变量(§14.4,§14.14)必须明确给定一个值 在使用前,通过初始化(§14.4)或赋值 (§15.26),以可使用规则进行验证的方式 分配


只需初始化您的
i和j

int i =0, j=0;
因为必须初始化局部变量

正如jcoder在相关问题中所回答的:

对象类型的实例变量默认初始化为 空。默认情况下,对象类型的局部变量未初始化 访问未定义的变量是编译时错误

此外,还表示:-

局部变量(§14.4,§14.14)必须明确给定一个值 在使用前,通过初始化(§14.4)或赋值 (§15.26),以可使用规则进行验证的方式 分配


只需初始化您的
i和j

int i =0, j=0;
因为必须初始化局部变量

正如jcoder在相关问题中所回答的:

对象类型的实例变量默认初始化为 空。默认情况下,对象类型的局部变量未初始化 访问未定义的变量是编译时错误

此外,还表示:-

局部变量(§14.4,§14.14)必须明确给定一个值 在使用前,通过初始化(§14.4)或赋值 (§15.26),以可使用规则进行验证的方式 分配


只需初始化您的
i和j

int i =0, j=0;
因为必须初始化局部变量

正如jcoder在相关问题中所回答的:

对象类型的实例变量默认初始化为 空。默认情况下,对象类型的局部变量未初始化 访问未定义的变量是编译时错误

此外,还表示:-

局部变量(§14.4,§14.14)必须明确给定一个值 在使用前,通过初始化(§14.4)或赋值 (§15.26),以可使用规则进行验证的方式 分配


必须先用值初始化
i
j
,然后才能执行此操作
loop1=((x-i)*(x-i))+((y-j)*(y-j))
例如
inti=0;intj=0;
或方程所需的任何值

您必须使用值初始化
i
j
,然后才能执行此操作
loop1=((x-i)*(x-i))+((y-j)*(y-j))
例如
inti=0;intj=0;
或方程所需的任何值

您必须使用值初始化
i
j
,然后才能执行此操作
loop1=((x-i)*(x-i))+((y-j)*(y-j))
例如
inti=0;intj=0;
或方程所需的任何值

您必须使用值初始化
i
j
,然后才能执行此操作
loop1=((x-i)*(x-i))+((y-j)*(y-j))
例如
int i=0;int j=0;
或方程所需的任何值

i和j的范围仅限于
公共静态void main(String[]args)
方法。
在类主体中声明它。

公开课问题2

{

静态整数i,j;

公共静态void main(字符串[]args)

{

i=j=0;

}

……您的其余代码



i和j的范围仅限于
公共静态void main(String[]args)
方法。
在类主体中声明它。

公开课问题2

{

静态整数i,j;

公共静态void main(字符串[]args)

{

i=j=0;

}

……您的其余代码



i和j的范围仅限于
公共静态void main