Java中绝对值函数的介绍与其妙用

发布时间 - 2026-01-10 22:18:19    点击率:

一、绝对值函数使用说明

绝对值函数是JDK中Math.java中的实现方法,其用来得到表达式的绝对值。

其实现非常简单,源码如下:

 /**
 * Returns the absolute value of an {@code int} value.
 * If the argument is not negative, the argument is returned.
 * If the argument is negative, the negation of the argument is returned.
 *
 * <p>Note that if the argument is equal to the value of
 * {@link Integer#MIN_VALUE}, the most negative representable
 * {@code int} value, the result is that same value, which is
 * negative.
 *
 * @param a the argument whose absolute value is to be determined
 * @return the absolute value of the argument.
 */
 public static int abs(int a) {
 return (a < 0) ? -a : a;
 }

二、绝对值的特性及其运用。

     1、正数的绝对值是其本身。

     2、负数的绝对值是其相反数。

     3、零的绝对值是其本身。

绝对值:自减函数配合绝对值,先降序再升序。

int number = 6;
System.out.println("原值输出:");
while(number>=-6){
 number --;
 System.out.print(number+" ");
}
System.out.println("\n绝对值输出:");
number = 6;
while(number>=-6){
 number --;
 System.out.print(Math.abs(number)+" ");
}

输出结果:

原值输出:
5 4 3 2 1 0 -1 -2 -3 -4 -5 -6 -7 
绝对值输出:
5 4 3 2 1 0 1 2 3 4 5 6 7

三、案例

1、背景:输出如下图案。

  A 
  B A B 
  C B A B C 
 D C B A B C D 
 E D C B A B C D E 
 F E D C B A B C D E F 
 G F E D C B A B C D E F G

2、分析:

     1、A为中心点

     2、每一行,先降序,再升序

     3、字母可以换算成整数,'A' = 65。那么,每行首个输出字母为 'A' +行数。

     4、每行左右对称,每行输出字母数 = 行数*2 +1(字母A);

3、实现

1、实现分析中的1~3步。以‘A'为中心点,先降序,再升序输出每行图案。

 //调用
 print(5);

 /**
 * 先降序,再升序 实现
 * @param row
 */
 private static void print(int row){
 for(int i=0;i<2*row+1;i++){
  int printChar = 'A' + Math.abs(row-i);
  System.out.print(((char)printChar)+" ");
 }
 }

输出如下:

F E D C B A B C D E F

2、步骤4中,每行输出字母数 = 行数*2 +1(字母A),那么:

每行应该显示的字母除外的部分,打印空格。逻辑控制如下:

for(int j=0;j<2*row+1;j++){
 //逻辑输出字母。先降序、再升序逻辑输出的字母
 int printChar = 'A' + Math.abs(row-j);
 //如果 [逻辑控制字母] 大于 [规定输出字母],则:
 if(printChar>firstChar){
 //输出空格
 System.out.print(" ");
 }else{
 //输出字母
 System.out.print(((char)printChar)+" ");
 }
}

3、完整代码:

//完整调用
printWithRow(7);

/**
 * 先倒序 再正序 输出 英文大写字母
 * 
 * @param row 行
 */
private static void printWithRow(int row){
 for(int i=0;i<row;i++){
 //规定输出字母。每行第一个显示出来的字母
 int firstChar = 'A' + i;
 for(int j=0;j<2*row+1;j++){
  //逻辑输出字母。先降序、再升序逻辑输出的字母
  int printChar = 'A' + Math.abs(row-j);
  //如果 [逻辑控制字母] 大于 [规定输出字母],则:
  if(printChar>firstChar){
  //输出空格
  System.out.print(" ");
  }else{
  //输出字母
  System.out.print(((char)printChar)+" ");
  }
 }
 //输出回车
 System.out.println();
 }
}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。


# java绝对值函数  # java中绝对值函数  # java的绝对值函数  # Java判断绝对值的方法总结  # Java得到一个整数的绝对值  # 不使用任何判断和比较语句  # 包括API  # Java中负数的绝对值竟然不一定是正数  # 升序  # 降序  # 中心点  # 行数  # 原值  # 第一个  # 英文  # 这篇文章  # 首个  # 有疑问  # absolute  # int  # argument  # equal  # Note  # Integer  # link  # gt  # returned  # negative 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧  Laravel的辅助函数有哪些_Laravel常用Helpers函数提高开发效率  Laravel如何处理表单验证?(Requests代码示例)  高性能网站服务器部署指南:稳定运行与安全配置优化方案  如何在阿里云部署织梦网站?  再谈Python中的字符串与字符编码(推荐)  如何在服务器上三步完成建站并提升流量?  PythonWeb开发入门教程_Flask快速构建Web应用  Bootstrap整体框架之CSS12栅格系统  JS去除重复并统计数量的实现方法  laravel怎么配置和使用PHP-FPM来优化性能_laravel PHP-FPM配置与性能优化方法  Laravel PHP版本要求一览_Laravel各版本环境要求对照  如何用AI帮你把自己的生活经历写成一个有趣的故事?  Laravel如何实现用户密码重置功能?(完整流程代码)  Laravel怎么解决跨域问题_Laravel配置CORS跨域访问  Laravel怎么返回JSON格式数据_Laravel API资源Response响应格式化【技巧】  Claude怎样写约束型提示词_Claude约束提示词写法【教程】  Laravel怎么使用artisan命令缓存配置和视图  大连 网站制作,大连天途有线官网?  php8.4header发送头信息失败怎么办_php8.4header函数问题解决【解答】  如何在腾讯云服务器快速搭建个人网站?  如何在阿里云高效完成企业建站全流程?  Laravel如何使用Eloquent ORM进行数据库操作?(CRUD示例)  JavaScript如何实现音频处理_Web Audio API如何工作?  Laravel全局作用域是什么_Laravel Eloquent Global Scopes应用指南  Laravel如何使用Service Container和依赖注入?(代码示例)  如何在Windows虚拟主机上快速搭建网站?  Laravel怎么连接多个数据库_Laravel多数据库连接配置  如何在香港免费服务器上快速搭建网站?  英语简历制作免费网站推荐,如何将简历翻译成英文?  高端建站三要素:定制模板、企业官网与响应式设计优化  Laravel如何获取当前登录用户信息_Laravel Auth门面使用与Session用户读取【技巧】  Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层  uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址  WEB开发之注册页面验证码倒计时代码的实现  Laravel怎么防止CSRF攻击_Laravel CSRF保护中间件原理与实践  Laravel怎么发送邮件_Laravel Mail类SMTP配置教程  Gemini手机端怎么发图片_Gemini手机端发图方法【步骤】  高端网站建设与定制开发一站式解决方案 中企动力  Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】  三星网站视频制作教程下载,三星w23网页如何全屏?  使用C语言编写圣诞表白程序  Laravel怎么设置路由分组Prefix_Laravel多级路由嵌套与命名空间隔离【步骤】  Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复  如何快速生成ASP一键建站模板并优化安全性?  公司网站制作价格怎么算,公司办个官网需要多少钱?  C++用Dijkstra(迪杰斯特拉)算法求最短路径  微信小程序 配置文件详细介绍  Laravel Debugbar怎么安装_Laravel调试工具栏配置指南  Laravel Facade的原理是什么_深入理解Laravel门面及其工作机制