数组本身也是对象,为什么int maxElement = getMax_2(arr);

NantiJiang 2014-04-13 04:11:35
package test;
/* 获取数组中最大值
思路
1,需要进行比较,并定义变量记录住每次比较后较大的值
2,对数组中的元素进行遍历取出,和变量中记录的元素进行比较,
如果遍历到的元素大于变量中记录的元素,就用变量记录住该大的值
3,遍历结果,该变量记录就是最大值


定义一个功能:选出数组中最大的那个元素
明确1 有没有返回值? 有,数组中的元素,int型
明确2 有没有未知内容参与?有,数组 */
public class test24 {
public static void main(String args[]){
int[] arr = {-23,-34,-65,-23,-78,-234,-6};
int maxElement = getMax_2(arr);//为什么int maxElement =arr.getMax();不对

System.out.println(maxElement);
}

public static int getMax(int [] arr ){
int maxElement = arr[0];//定义变量记录较大的值
for(int x=1;x<arr.length;x++){//注意不要x<arr.length-1那样最后一个元素取不到,
//x=1而不等于0是因为开始取得最大值就是arr[0],自己就不要和自己比了

if(arr[x]>maxElement)
maxElement = arr[x];
}

return maxElement;
}

//getMax_2() 是求最大值的另一种思想、方法
public static int getMax_2(int []arr){
int maxIndex = 0;//定义变量记录较大的值的角标
for(int x=1;x<arr.length ;x++){//注意不要x<arr.length-1那样最后一个元素取不到
if(arr[x]>arr[maxIndex])
maxIndex = x;
}


return arr[maxIndex];
}

//getMax()是通过控制元素来进行的比较,而getMax_2()是通过控制元素角标来进行元素的比较

}
...全文
319 7 打赏 收藏 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
vnvlyp 2014-05-25
  • 打赏
  • 举报
回复
引用 4 楼 u014547383 的回复:
终于看到你的疑问了,不容易啊

int maxElement =arr.getMax();
看这么仔细。。
yuhouqingchen_2648 2014-05-25
  • 打赏
  • 举报
回复
引用 4 楼 u014547383 的回复:
终于看到你的疑问了,不容易啊

int maxElement =arr.getMax();
有两个问题要明确: 1,你想这样写,但是这样的话表示的是用arr来调用getMax()方法,而且调用的也是没有参数的getMax方法,而你定义的getMax()方法需要有一个数组作为参数,这肯定就调不到了啊. 2,况且要想调用一个方法,要么用方法所属类的对象来调用,要么方法是静态的(就是方法语句上有static)可以用类名来调用,而数组arr不属于getMax方法所在的类,所以就不能调用了.如果是在方法所在类中调用方法,就可以省略类名,也就是直接写getMax(arr)就可以了.
你赢了,这你也猜得到。。。。。。
Z-ero 2014-04-13
  • 打赏
  • 举报
回复
终于看到你的疑问了,不容易啊

int maxElement =arr.getMax();
有两个问题要明确: 1,你想这样写,但是这样的话表示的是用arr来调用getMax()方法,而且调用的也是没有参数的getMax方法,而你定义的getMax()方法需要有一个数组作为参数,这肯定就调不到了啊. 2,况且要想调用一个方法,要么用方法所属类的对象来调用,要么方法是静态的(就是方法语句上有static)可以用类名来调用,而数组arr不属于getMax方法所在的类,所以就不能调用了.如果是在方法所在类中调用方法,就可以省略类名,也就是直接写getMax(arr)就可以了.
Z-ero 2014-04-13
  • 打赏
  • 举报
回复
这个代码是对的啊,没写错
-江沐风- 2014-04-13
  • 打赏
  • 举报
回复
Z-ero 2014-04-13
  • 打赏
  • 举报
回复
问题是什么都没说
大气污染是影响公众健康与生态环境的重要问题,精准的空气质量时空预测与污染源贡献度量化是精准治污的关键支撑。针对现有研究多源融合不充分、时空关联刻画不足、预测与源解析割裂三方面缺陷,本文设计实现了城市空气质量时空预测与污染源贡献度分析系统,融合监测、气象、工业排放与交通四类数据,构建基于时空注意力的LSTM(STAM-LSTM)预测模型与基于正定矩阵因子分解(PMF)的源解析模型,形成数据融合-特征工程-预测-源解析-可视化闭环。 系统实现四类数据时空对齐与融合,构建时序与空间邻域特征,以普通克里金插值生成1km网格浓度场;STAM-LSTM引入时空注意力自适应学习站点间污染传输时变权重,以72小时输入预测未来24小时逐小时PM2.5浓度;PMF识别交通、工业、燃煤、扬尘与二次生成五个源因子,量化各源全年贡献度并分析时空演变。 实验表明:STAM-LSTM预测RMSE 24.6、MAE 17.8、R² 0.88,相对LSTM基线(30.2)提升18.5%;普通克里金插值误差8.9,优于反距离加权(11.4);源解析显示交通源28.4%、工业源23.1%、燃煤源19.6%为主要贡献源,冬季燃煤源升至27.3%、早高峰交通源达34.8%,下风向工业源贡献高出上风向8~12个百分点;减排情景显示交通源减排20%可使年均PM2.5下降5.7%,与源贡献度排序一致。 系统按五模块14组件实现,功能测试16项用例全部通过,为大气污染预警、源管控与减排政策制定提供了决策依据。 【课程报告内容】 摘要 第1章 绪论 第2章 相关技术与理论 第3章 系统需求分析 第4章 系统总体设计 第5章 系统详细设计与实现 第6章 系统测试与分析 第7章 总结与展望 参考文献 附件-实现指南

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧