//获取chars数组 char[] chars = String.valueOf(x).toCharArray(); //构造一个chars1数组和chars的长度一样 char[] chars1 = new char[chars.length]; //遍历数组,把从chars第0位开始给chars1最后一位,依此往中间靠拢 for (int i = 0; i <= chars.length - 1; i++) { chars1[i] = chars[chars.length - 1 - i]; } //通过构建对象的方式将chars1转化为String类型 String str = new String(chars1);
//获取chars数组 char[] chars = String.valueOf(x).toCharArray(); //构造一个chars1数组和chars的长度一样 char[] chars1 = new char[chars.length]; for (int i = 0; i <= chars.length - 1; i++) { //遍历数组,把从chars第0位开始给chars1最后一位,依此往中间靠拢 chars1[i] = chars[chars.length - 1 - i]; } //生成的数组类似于[2,4,3,4,-],所以我们只需要除开最后一位的位数 //在char[]数组中删除某个元素的方法-->也就是只取前n位的方法 Arrays.copyOfRange(chars,0,n) char[] chars2 = Arrays.copyOfRange(chars1, 0, chars1.length - 1); String str = new String(chars2);
if(x>=0 && x<=2147483647) { //省略的代码 //将String类型转化为long类型 //用long类型作为过渡(接收结果) result = Long.parseLong(str); if( result > 2147483647){ //如果结果已经大于int类型范围就直接返回0 return 0; } else { //如果结果没有超出int类型范围最后转化为int类型 return (int)result; }
import java.util.Arrays;public class ReserveInteger { public static int reserve(int x) { long result = 0; if(x>=0 && x<=2147483647) { if (x > 0) { char[] chars = String.valueOf(x).toCharArray(); char[] chars1 = new char[chars.length]; for (int i = 0; i <= chars.length - 1; i++) { chars1[i] = chars[chars.length - 1 - i]; } String str = new String(chars1); result = Long.parseLong(str); if( result > 2147483647){ return 0; } else { return (int)result; } } else if (x < 0 && x >= -2147483648) { char[] chars = String.valueOf(x).toCharArray(); char[] chars1 = new char[chars.length]; for (int i = 0; i <= chars.length - 1; i++) { chars1[i] = chars[chars.length - 1 - i]; } char[] chars2 = Arrays.copyOfRange(chars1, 0, chars1.length - 1); String str = new String(chars2); result = Long.parseLong(str); if( result < -2147483648){ return 0; } else { return (int)result; } } else { return 0; } } else { return 0; } } public static void main (String[]args){ int a = -2147483412; System.out.println(reserve(a)); }}
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/119975.html
摘要:关于递归这里提一两点递归基本有这几步递归的模板,终止条件,递归调用,逻辑处理。 ?作者简介:大家好,我是车神哥,府学路18号的车神? ?个人主页:应无所住而生...
摘要:同时让当前结点的指针指向,从而实现从链表尾部开始的局部反转当递归函数全部出栈后,链表反转完成。这个链表的倒数第个节点是值为的节点。新链表是通过拼接给定的两个链表的所有节点组成的。 目录 1.反转链表 K个一组翻转链表 链表的中间节点: 链表倒数第k个节点: 删除链表倒数第k个节...
摘要:先实现栈操作遍历链表,把每个节点都进中然后再遍历链表,同时节点依次出栈,二者进行比较。 ?作者简介:大家好,我是车神哥,府学路18号的车神? ?个人主页:应无...
摘要:先实现栈操作遍历链表,把每个节点都进中然后再遍历链表,同时节点依次出栈,二者进行比较。 ?作者简介:大家好,我是车神哥,府学路18号的车神? ?个人主页:应无...
摘要:新链表是通过拼接给定的两个链表的所有节点组成的。保证链表长度小于等于。注意,函数返回结果后,链表必须保持其原始结构。注意不作为参数进行传递,仅仅是为了标识链表的实际情况。如果是,则在该链表中没有环。说明不允许修改给定的链表。 ...
阅读 2607·2021-11-17 09:33
阅读 4046·2021-09-22 15:57
阅读 3048·2021-09-22 10:02
阅读 2717·2019-08-30 14:16
阅读 2976·2019-08-29 14:07
阅读 2269·2019-08-26 11:55
阅读 3195·2019-08-23 17:07
阅读 1606·2019-08-23 16:50