7. Reverse Integer

来源:互联网 发布:中性笔成分知乎 编辑:程序博客网 时间:2024/05/29 14:28

Reverse digits of an integer.

Example1: x = 123, return 321

Example2: x = -123, return -321 


第一次

public class Solution {    public int reverse(int x) {      int plusX = x>0?x:-x;        char[] char_x = (""+plusX).toCharArray();        int start=0, end=char_x.length-1;        char flag;        while(end > start){        flag=char_x[start];        char_x[start++]=char_x[end];        char_x[end--]=flag;         }        String str_x="";        boolean is_first = true;        for(char c : char_x){        if(is_first){            is_first=false;        if(c == '0'){        if(char_x.length>1){        continue;        }        if(char_x.length==1){        str_x="0";        }        is_first = false;        }else        str_x+=c;        }else{        str_x+=c;        }                }                try {plusX = Integer.parseInt(str_x.trim());} catch (NumberFormatException e) {return 0;}                if(x<0)        plusX = -plusX;        return plusX;    }    }
第二次
public class Solution {    public int reverse(int x) {        boolean negtive = x < 0 ? true : false;        StringBuilder sb = null;        x = Math.abs(x);        sb = new StringBuilder(""+x);        sb = sb.reverse();        int result = 0;        try{            result = Integer.valueOf(sb.toString());        }catch(NumberFormatException e){            result = 0;        }        return negtive ? -result : result;    }    }



0 0
原创粉丝点击