哪个帮我看下下面这个程序,我运行总是在红色部分报错(ma未初始化),敢问各位这是怎么回事,if..else不是初始化了吗?我需要详解。
public class test{
public static boolean max(int table[],int max)
{boolean ma;
for(int i=0;i<table.length;i++)
if(max>table[i])ma=true;
else ma=false;
return ma; }
public static int max(int table[])
{int max=table[0];
for(int i=0;i<table.length;i++)
if(table[i]>max)max=table[i];
return max;
}
public static void main(String[] args){
int table[]={4,54,87,1,32,475,34};
System.out.println("最大值是"+max(table));
System.out.println(max(table,max(table)));
}}
public class test{
public static boolean max(int table[],int max)
{boolean ma;
for(int i=0;i<table.length;i++)
if(max>table[i])ma=true;
else ma=false;
return ma; }
public static int max(int table[])
{int max=table[0];
for(int i=0;i<table.length;i++)
if(table[i]>max)max=table[i];
return max;
}
public static void main(String[] args){
int table[]={4,54,87,1,32,475,34};
System.out.println("最大值是"+max(table));
System.out.println(max(table,max(table)));
}}
解决方案 »
- 急求高手指导:java如何做连接windows域的用户验证
- 请教各位:java的一个程序是否可以执行两个线程,而这两个线程执行的内容不一样
- 怎样在java代码中登陆一个网站?
- 如何让Applet的初始大小自动适应不同客户端的分辨率
- 简单问题,怎样判断是否有重复数字
- 做了个时钟,请各位帮忙改成动态的
- 想学java,请大家给推荐一本短小一些的书。
- 如何读取一个RandomAccessFile文件中的一部分数据?
- 如果网上的文件打不开..(不存在)..要用什么exception 来处理错误???
- FileWriter(贴吧没人回~)
- 调了一天了也没成功 求解答 多谢!
- 关于java的Runtime.exec的问题
编译器哪里知道你的table.length是多长呀。所以他就提示你ma没初始化。
你只要在定义ma是给个初始值就可以了boolean ma = false;//初始化下
(int table[])??
要给ma附一个初值;
其次,兄弟,你要有点格式啊,切记!
public static boolean max(int table[], int max) {
boolean ma = false;
for (int i = 0; i < table.length; i++) {
if (max > table[i]) {
ma = true;
} else {
ma = false;
}
System.out.println(ma);
}
return ma;
} public static int max(int table[]) {
int max = table[0];
for (int i = 0; i < table.length; i++)
if (table[i] > max)
max = table[i];
return max;
} public static void main(String[] args) {
int table[] = { 4, 54, 87, 1, 32, 475, 34 };
System.out.println("最大值是" + max(table));
max(table, max(table));
}
}
不是成员变量吧?不是成员变量,要显示初始化的。
你定义一下,boolean ma = false;
{
boolean ma = false;
for(int i=0;i<table.length;i++)
{
if(max>table[i])
{
ma=true;
}
else
{
ma=false;
}
}
return ma;
}
public static void main(String [] ars){
int i = 0;
System.out.println(i);
}
}
*********************************************************
public class Test{
public static void main(String [] ars){
int i;
i = 0;
System.out.println(i);
}第二个程序里面的 i 也是局部变量,没有显示初始化为什么就可以呢???
而 i 如果在语句块里赋值然后在打印 i 就显示“i 未被初始化”,而这种情况在上面第二个程序里就不存在!!!!!
}