要求:输入一个int型整数,将这个整数中每位上的数字进行反转(除福符号位外)输出,若反转后的数字超过了int型范围,则输出0;
如:12340--------4321 -1234-----------(-4321)

方案:1.首先从键盘输入一个int型整数num;
2.取绝对值con = Math.abs(num),得到正数con;
3.将正数con转换为字符串str = String.valueOf(con);
4.再将字符串转换为字符型数组char[] charArray = str.toCharArray();
5通过公式.res = ((long) charArray[i - 1] - 48) * (long) (Math.pow(10.0, n)) 获得每一位上的数

程序如下:
package cn.leetcode;
import java.util.Scanner;

public class reverse1 {
public static void main(String[] args) {

    System.out.println("请输入一个int数值");Scanner sc = new Scanner(System.in);int num = sc.nextInt();                 //由键盘获得一个int型整数int con = Math.abs(num);            //取绝对值String str = String.valueOf(con);   //将正数转换为字符串char[] charArray = str.toCharArray();//转换为字符型数组long res = 0;int rev;for (int i = str.length(); i > 0; i--) {double n = (double) (i - 1);res = ((long) charArray[i - 1] - 48) * (long) (Math.pow(10.0, n)) + res;}       //求反转后的数值if (num < 0) {      //判断正负res = -res;}//判断有没有超过范围if (res > (long) (Math.scalb(-1.0, 31)) && res < (long) ((Math.scalb(1.0, 31))) - 1) {rev = (int) res;System.out.println(rev);} else {rev = 0;System.out.println(rev);}
}

}

执行结果:

请输入一个int数值
-783729
-927387

执行结果:
请输入一个int数值
-367290
-92763

java算法int型整数反转的另类解法相关推荐

  1. atoi函数:c\c++中把字符串整数转换为int型整数

    atoi函数:c\c++中把字符串整数转换为int型整数       atoi (表示 ascii to integer)是把字符串转换成整型数的一个函数,应用在计算机程序和办公软件中.atoi( ) ...

  2. Java语言int型与byte型数组的转换

    为了在接下来的篇章中讲解用Java实现文件的归档和解归档,需要先了解一下Java中int型与byte型数组之间的相互转换. 首先,我们先来看看int型转换成byte型数组. 我们知道,Java中,一个 ...

  3. java 的long型整数的最大值

    java 的long型整数的最大值:9223372036854775807,即19位十进制数 64位二进制数 16位16进制数

  4. int型整数的数值范围

    假设int型用两个字节表示对于有符号的整数,用补码表示的话,最高位是符号位,后面15位用来表示数据.1.正数,表示的范围为0000 0000 0000 0001-0111 1111 1111 1111 ...

  5. Java中int型如何求幂_关于java:为什么Math.pow(int,int)慢于我的幼稚实现?

    昨天我看到一个问题,问为什么Math.pow(int,int)这么慢,但是问题措辞不佳,没有进行任何研究,因此很快就关闭了. 我做了一些自我测试,发现与整数参数相比,Math.pow方法实际上比我自己 ...

  6. Java算法罗马数字转整数

    本文章只提供算法. 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 字符          数值 I             1 V             5 X         ...

  7. Java返回int型的空值_使用MyBatis查询int类型字段,返回NULL值时报异常的解决方法...

    当配置mybatis返回int类型时 select id="getUserIdByName" parameterType="string" resultType ...

  8. int型整数的最小值和最大值是多少(精确值)

    int main() { /*int n = 0, i = 0;while (n >= i){n = i;i--;}printf("%d", n);*/ //-2147483 ...

  9. int型整数的最大值和最小值是多少

    #include<stdio.h> int main(){int n=0;int i=0;while(n<=i){n=i;i++;}printf("int最大值为:%d\n ...

最新文章

  1. “.Net 社区虚拟大会”(dotnetConf) 2016 Day 3 Keynote: Scott Hanselman
  2. Win10如何取消开机密码
  3. 边缘检测(5)Canny算法
  4. jzoj3509-倒霉的小C【gcd,欧拉函数】
  5. linux离线安装docker,centos离线安装docker
  6. c语言成绩等级switch语句,请高手 帮忙做一道c语言题 编程,把百分制成绩转换成5级记分制,要求用switch语句。 90分以上(包括90):...
  7. redis缓存穿透,缓存击穿与缓存雪崩详解
  8. python列表初始化长度_在Python中预先初始化列表内容和长度的实现
  9. Helloworld之Spring依赖注入/控制反转(DI/IoC)版
  10. 每一个写博客的程序猿,都应该被温柔对待
  11. FogROS2 使用 ROS 2 的云和雾机器人的自适应和可扩展平台
  12. RK3566触屏旋转方向
  13. 尊敬的用户您好: 您访问的网站被机房安全管理系统拦截,可能是以下原因造成: 1.您
  14. 工业元宇宙三人行系列直播活动第五场在北京举办
  15. 主机序、网络序的理解
  16. 三星获欧洲专利居业内之首 中兴首次进入前十
  17. Android 创建 文件 和 文件夹
  18. 云服务案例分析 BB平台 Quiz3
  19. 软件设计一点通 | 抽象文档模式详解
  20. 微信小程序分包后主包依旧过大

热门文章

  1. ipad协议最新替代
  2. 2022哈工大(深圳)计算机854考研经验贴|双非跨考|初试367 复试293
  3. HTTP断点续传以及缓存问题
  4. Proteus8.9 VSM Studio WINAVR编译器仿真ATmega16系列a19_DS18B20_LCD1602
  5. Matplotlib 实战总结,超全!超长!
  6. 惠普g7服务器硬盘阵列,HP DL388 G7 服务器重新做RAID
  7. 买台式计算机什么指标的好,购买电脑时,只要你了解了这几个参数,就能保证不被坑...
  8. Math.hypot()
  9. 简述卡西欧5800p计算机,fx5800p
  10. 山东大学计算机专业知名教授,胡思煌 山东大学主页平台管理系统--胡思煌