java-两数倒置后求和
生活随笔
收集整理的這篇文章主要介紹了
java-两数倒置后求和
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
? ? ? ? 對(duì)于兩數(shù)倒置之后求和,如123,456,倒置后求和為975。如果是100,200,倒置后求和為3,倒置后開(kāi)頭為0的自動(dòng)消除。對(duì)于這種程序,考慮用字符串的形式進(jìn)行編寫(xiě)。先將其字符串分別用reverse()倒置過(guò)來(lái)。然后再比較其長(zhǎng)度,如果不一樣長(zhǎng)度,給長(zhǎng)度較短的在前面加字符0.然后再分別對(duì)其求和。最后,消除求和后字符串的開(kāi)頭0。
public static String reverseadd(String n1,String n2) { StringBuffer result = new StringBuffer();n1 = new StringBuffer(n1).reverse().toString();n2 = new StringBuffer(n2).reverse().toString();int len1 = n1.length();int len2 = n2.length();int maxLen = len1 > len2 ? len1 : len2;int c = 0;if (len1 < len2) {for (int i = len1; i < len2; i++) {n1 = "0"+n1;}} else if (len1 > len2) {for (int i = len2; i < len1; i++) {n2 = "0"+n2;}} for (int i = 0; i <maxLen; i++) {int nSum = Integer.parseInt(n1.charAt(i) +"") + Integer.parseInt(n2.charAt(i) +"")+c;int ap = nSum%10;result.append(ap);c = nSum/10; }if(c>0) {result.append(c);} String num=result.toString();for (int i = 0; i <num.length(); i++) {char ch;if((ch=num.charAt(i))!='0'){break;}else{num= num.replace(num.charAt(i), ' ');}}return num; }?
與50位技術(shù)專家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的java-两数倒置后求和的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: C++ 使用模板Template
- 下一篇: ElasticSearch范围查询(英文