java - 将数组中的负数转换为正数 Java
问题描述
我知道有人提出并回答了类似的问题,但我的代码仍然无法正常工作,我想向您寻求帮助。
在我的 Java 代码中,我想创建一个将数组的所有负整数转换为正整数的方法。
在main
方法中,然后我想创建一个数组,用整数填充它并调用上面创建的方法。
编译器对我的代码没有问题,但输出仍然充满负数。我做错了什么?
在我的代码下方(中的单词German
,对那些不明白的人感到抱歉):
public class BetragAnwendung {
public int[] bildeBetrag(int[] werte) {
for (int i : werte) {
Math.abs(i);
}
return werte;
}
public static void main(String[] args) {
BetragAnwendung betragAnwendung = new BetragAnwendung();
int[] array = { 1, -2, -42 };
int[] positiveArray = betragAnwendung.bildeBetrag(array);
for (int i = 0; i < array.length; i++) {
System.out.println(positiveArray[i]);
}
}
}
输出是:
1
-2
-42
提前致谢!
解决方案
Math.abs
接收一个数字并返回其绝对值 - 您当前忽略的返回值。您需要将其分配回数组:
public int[] bildeBetrag(int[] werte) {
for (int i = 0; i < werte.length; ++i) { // Note we're iterating the array's indexes!
werte[i] = Math.abs(werte[i]);
}
return werte;
}
推荐阅读
- excel - 用于更新命名范围的 Excel VBA 脚本导致 .RefersTo 指向错误的单元格
- reactjs - 使用 Gatsby Contentful 显示所有博客文章
- python - 使用已定义和未定义字符拆分字符串
- viber - 如何使按钮的角变圆?振动机器人
- sql - 获取表格尺寸的最快方法?
- html - bootstrap 类 link-dark 不影响
- prometheus - Grafana 中的重复面板
- javascript - 在 Httpresponse 之前或之后调用 ClientScript.RegisterStartupScript 不起作用
- java - 有没有办法改变 jDatePicker 上的按钮颜色
- angular - Angular - 反应式表单:如何正确获取动态和可重用子表单的值