• <sub id="h4knl"><ol id="h4knl"></ol></sub>
    <sup id="h4knl"></sup>
      <sub id="h4knl"></sub>

      <sub id="h4knl"><ol id="h4knl"><em id="h4knl"></em></ol></sub><s id="h4knl"></s>
      1. <strong id="h4knl"></strong>

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

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

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

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

        Java認(rèn)證基礎(chǔ)知識: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ǔ)知識:java字符串轉(zhuǎn)化整型問題】相關(guān)文章:

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

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

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

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

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

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

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

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

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

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码
      3. <sub id="h4knl"><ol id="h4knl"></ol></sub>
        <sup id="h4knl"></sup>
          <sub id="h4knl"></sub>

          <sub id="h4knl"><ol id="h4knl"><em id="h4knl"></em></ol></sub><s id="h4knl"></s>
          1. <strong id="h4knl"></strong>

          2. 在线点播日韩欧美精品 | 真实国产乱子伦视频 | 中文字幕精品亚洲无线码二区 | 亚洲欧美日韩在线综合专区 | 亚洲最大在线观看AV网站 | 中国少妇与黑人高潮了 |