java绝对值函数

生活百科 2022-10-24 08:27www.ai-classes.cn生活常识

java绝对值函数是什么,怎么使用呢?不知道的小伙伴来看看小编今天的分享吧!

一、绝对值函数使用说明

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

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

/

Returns the absolute value of an {@code int} value.

If the argunt is not negative, the argunt is returned.

If the argunt is negative, the negation of the argunt is returned.

Note that if the argunt is equal to the value of

{@link Integer#MIN_VALUE}, the most negative representable

{@code int} value, the result is that sa value, which is

negative.

@param a the argunt whose absolute value is to be determined

@return the absolute value of the argunt.

/

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

案例

背景输出如下图案。

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

分析

1、A为中心点

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

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

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

实现

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

//调用

print(5);

/

先降序,再升序 实现

@param row

/

private static void print(int row){

for(int i=0;i<2row+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<2row+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

//规定输出字母。每行第一个显示出来的字母

int firstChar = 'A' + i;

for(int j=0;j<2row+1;j++){

//逻辑输出字母。先降序、再升序逻辑输出的字母

int printChar = 'A' + Math.abs(row-j);

//如果 [逻辑控制字母] 大于 [规定输出字母],则

if(printChar>firstChar){

//输出空格

System.out.print(" ");

}else{

//输出字母

System.out.print(((char)printChar)+" ");

}

}

//输出回车

System.out.println();

}

}

以上就是小编今天的分享了,希望可以帮助到大家。

上一篇:gx developer安装教程 下一篇:object转integer

Copyright © 2014-2025 Www.ai-classes.cn 爱句子网