<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • Java認(rèn)證基礎(chǔ)知識(shí):java字符串轉(zhuǎn)化整型問題

    時(shí)間:2024-07-21 17:01:36 JAVA認(rèn)證 我要投稿
    • 相關(guān)推薦

    Java認(rèn)證基礎(chǔ)知識(shí):java字符串轉(zhuǎn)化整型問題

      java 字符串轉(zhuǎn)化整型問題

    Java認(rèn)證基礎(chǔ)知識(shí):java字符串轉(zhuǎn)化整型問題

      public class StringParesInteger {

      /**

      * @param args

      */

      public static void main(String[] args) {

      // TODO Auto-generated method stub

      System.out.println(Integer.MIN_VALUE);

      System.out.println(Integer.MAX_VALUE/10);

      System.out.println(pareseInt("="));

      }

      /**本題考查的主要是邊界條件

      * 1.穿入的字符串是否為空

      * 2.字符串的首位是否為(+、-)

      * 3.字符中是否有非法字符

      * 4.穿入的字符串是否超過了整數(shù)的最大值(Integer.MAX_VALUE(2147483647)/Integer.MIN_VALUE(-2147483648))

      *

      * @param data

      * @return

      */

      public static int pareseInt(String data){

      /*

      * 判讀穿傳入的字符串是否為空

      */

      if(data==null||data.length()==0){

      throw new NullPointerException("data is null");

      }

      int index=0;

      /**

      *

      */

      //是否為負(fù)數(shù)

      boolean isPositive=true;

      // 臨界值

      int limit = 0;

      //取出字符串的第一位

      char first=data.charAt(0);

      //第一位是負(fù)數(shù)的情況下

      if(first=='-'){

      isPositive=false;

      index++;

      //設(shè)置整形最小的負(fù)數(shù)(-2147483648)

      limit=-Integer.MIN_VALUE;

      }

      //第一位是整數(shù)的情況下

      if(first=='+'){

      isPositive=true;

      //設(shè)置最大的正數(shù)是(2147483647)

      limit=Integer.MAX_VALUE;

      index++;

      }

      //設(shè)置比較的邊界值(214748364)

      int maxLimit=Integer.MAX_VALUE/10;

      int length=data.length();

      int result=0;

      while(index'0'&&ch<'9'){

      //先判斷原來的值是否大于比較的臨界值

      if(result>maxLimit){

      throw new RuntimeException("整數(shù)越界了");

      }

      // 判斷當(dāng)前位的值+ch的值是否》整數(shù)的最大值

      if(result*10>limit-(ch-'0')){

      System.out.println("result-->"+(result*10));

      System.out.println("max----->"+(Integer.MAX_VALUE));

      System.out.println("result-->"+(Integer.MAX_VALUE-(ch-'0'))+" ch="+(ch-'0'));

      throw new RuntimeException("數(shù)組越界了s ");

      }

      index++;

      result=result*10+(ch-'0');

      }else{

      throw new RuntimeException("不是整數(shù) ");

      }

      }

      //三目運(yùn)算符

      return isPositive?result:-result;

      }

      }

    【Java認(rèn)證基礎(chǔ)知識(shí):java字符串轉(zhuǎn)化整型問題】相關(guān)文章:

    JAVA認(rèn)證基礎(chǔ)知識(shí):Java獲取當(dāng)前的系統(tǒng)時(shí)間03-18

    sun認(rèn)證java關(guān)于字符串處理技巧03-29

    JAVA認(rèn)證基礎(chǔ)知識(shí):JavaNativeInterface學(xué)習(xí)小結(jié)01-11

    JAVA認(rèn)證簡(jiǎn)介03-19

    SUN JAVA認(rèn)證介紹12-18

    JAVA認(rèn)證考試細(xì)則03-19

    java認(rèn)證考試介紹03-19

    Java的基礎(chǔ)知識(shí)07-27

    JAVA認(rèn)證開源技術(shù):關(guān)于Java的對(duì)象equals方法03-04

    主站蜘蛛池模板: 久久精品人成免费| 国产精品亚洲欧美一区麻豆 | 精品99久久aaa一级毛片| 久久精品国产亚洲AV嫖农村妇女| 九九久久精品国产| 国产精品一区在线播放| 亚洲AV日韩精品久久久久| 精品乱子伦一区二区三区高清免费播放| 国产网红无码精品视频| 亚洲麻豆精品国偷自产在线91 | 伊人精品久久久久7777| 国产福利电影一区二区三区,亚洲国模精品一区 | 精品一卡2卡三卡4卡免费视频 | 亚洲精品无码永久中文字幕| 国内精品伊人久久久久影院对白 | 69堂午夜精品视频在线| 成人国产精品免费视频| 日韩精品无码一区二区三区免费| 蜜臀AV无码国产精品色午夜麻豆| 成人午夜精品亚洲日韩| 久久91综合国产91久久精品| 国产精品白浆在线观看免费| 日韩国产成人精品视频| 亚洲日韩精品无码专区网址| 日本Aⅴ大伊香蕉精品视频| 精品一区二区三区免费观看| 欧美精品一本久久男人的天堂| 精品一区二区三区东京热| 亚洲精品国产成人片| 亚洲国模精品一区| 久久夜色精品国产| 精品久久久久久无码人妻蜜桃| 国产精品无码一区二区在线观一| 99精品久久久久久久婷婷| 日韩欧国产精品一区综合无码| 精品一区二区久久| 亚洲色图国产精品| 99久久精品国产毛片| 99久久夜色精品国产网站| 99视频在线精品国自产拍亚瑟| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 |