最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java求數組元素重復次數和java字符串比較大小示例

 更新時間:2014年04月30日 11:48:19   作者:  
這篇文章主要介紹了java求數組元素重復次數和java字符串比較大小示例,需要的朋友可以參考下

復制代碼 代碼如下:

/**
 * Name: 求數組中元素重復次數對多的數和重復次數
 * Description:
 * 數組中的元素可能會重復,這個方法可以找出重復次數最多的數,同時可以返回重復了多少次。
 * 但需要知道這個數組中最大的元素是多少,如果無法確定,就悲劇啦~
 *
 * @param array目標數組;
 *           max數組中數據的最大值;
 * @return 返回一個包含重復次數最多的數(value)和重復次數(maxCount)的map集合;
 *                  內部出現異常,默認返回0;
 * @throws
 * @Author 楊元
 */
public static Map<String, Integer> arraySearch(int[] array,int max){
  //結果集合
  Map<String, Integer> resultMap = new HashMap<String, Integer>();
  //重復的次數
  int maxCount = 0;
  //重復次數對多的數
  int value = 0;

  try{
    //初始化數據數組,用來存放每個元素出現的次數
    int[] dataArray = new int[max+1];

    //遍歷要查找的數組,以每個元素為下標,直接定位數據數組,進行+1操作,表示出現了一次
    for(int i : array){
      dataArray[i]++;
    }

    //找到數據數組中最大值
    for(int i=0;i<dataArray.length;i++){
      if(dataArray[i]>maxCount){
        maxCount=dataArray[i];
        value=i;
      }
    }
  }catch (Exception e) {}

  resultMap.put("maxCount", maxCount);
  resultMap.put("value", value);

  return resultMap;
}

/**
 * Name: 比較兩個字符串大小
 * Description: 比較的規(guī)則和數據庫中的order by效果一致;
 *                 null自動轉為空,空字符串最大;
 *
 * @param first 要比較的第一個字符串;
 *           second 要比較的第二個字符串;
 * @return first大于second返回正數;
 *            first等于second返回0;
 *         first小于second返回負數;
 *         內部異常默認返回0;
 *         返回值非固定值哦~~;
 * @throws
 * @Author 楊元
 */
public static int compareString(String first,String second){
  int result = 0;

  try{
    //null轉空
    first = first==null?"":first;
    second = second==null?"":second;

    //預先記錄字符串長度,避免反復讀取
    int firstLength=first.length();
    int secondLength=second.length();

    //處理含有空串的特殊情況
    if("".equals(first) || "".equals(second)){
      //誰長誰小
      result = secondLength-firstLength;
    }else{
      //臨時空間,用來存放ascii碼總和
      int firstCount = 0;
      int secondCount = 0;
      //用純運算得出兩個數中較小的數,實在是bt
      int minLength = (secondLength*(firstLength/secondLength) + firstLength*(secondLength/firstLength))/(firstLength/secondLength + secondLength/firstLength);
      //按兩個字符串中較短的位數去逐位截取,防止越界
      for(int i=0;i<minLength;i++){
        //求ascii碼和
        firstCount+=first.substring(i,i+1).getBytes()[0];
        secondCount+=second.substring(i,i+1).getBytes()[0];
        //和不相等,說明已經比較出了大小
        if(firstCount!=secondCount){
          break;
        }
      }

      if(firstCount==secondCount){
        //長度長的大
        result = firstLength-secondLength;
      }else{
        //總和大的大
        result = firstCount-secondCount;
      }
    }
  }catch (Exception e) {}

  return result;
}

相關文章

  • MyBatis自定義SQL攔截器示例詳解

    MyBatis自定義SQL攔截器示例詳解

    Mybatis支持對Executor、StatementHandler、PameterHandler和ResultSetHandler 接口進行攔截,也就是說會對這4種對象進行代理,下面這篇文章主要給大家介紹了關于MyBatis自定義SQL攔截器的相關資料,需要的朋友可以參考下
    2021-10-10
  • springboot靜態(tài)資源的配置方式

    springboot靜態(tài)資源的配置方式

    這篇文章主要介紹了springboot靜態(tài)資源的配置方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • Java1.8中LocalDate方法使用總結

    Java1.8中LocalDate方法使用總結

    LocalDate是Java8中的一個日期類,用于表示年月日,它是不可變的,線程安全的,下面這篇文章主要給大家介紹了關于Java1.8中LocalDate方法使用的相關資料,需要的朋友可以參考下
    2024-03-03
  • java隊列之queue用法實例分析

    java隊列之queue用法實例分析

    這篇文章主要介紹了java隊列之queue用法實例分析,Queue 隊列就是一個先入先出(FIFO)的數據結構,Queue接口繼承Collection接口。感興趣的可以了解一下
    2020-07-07
  • Java+OpenCV實現圖片中的人臉識別

    Java+OpenCV實現圖片中的人臉識別

    這篇文章主要介紹了如何利用java?opencv實現人臉識別功能,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03
  • 詳解Spring與Mybatis整合方法(基于IDEA中的Maven整合)

    詳解Spring與Mybatis整合方法(基于IDEA中的Maven整合)

    這篇文章主要介紹了Spring與Mybatis整合方法(基于IDEA中的Maven整合),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • java計算給定字符串中出現次數最多的字母和該字母出現次數的方法

    java計算給定字符串中出現次數最多的字母和該字母出現次數的方法

    這篇文章主要介紹了java計算給定字符串中出現次數最多的字母和該字母出現次數的方法,涉及java字符串的遍歷、轉換及運算相關操作技巧,需要的朋友可以參考下
    2017-02-02
  • gateway、webflux、reactor-netty請求日志輸出方式

    gateway、webflux、reactor-netty請求日志輸出方式

    這篇文章主要介紹了gateway、webflux、reactor-netty請求日志輸出方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Java使用代理進行網絡連接方法示例

    Java使用代理進行網絡連接方法示例

    這篇文章主要介紹了Java使用代理進行網絡連接方法示例,內容十分詳細,需要的朋友可以參考下。
    2017-09-09
  • Java this關鍵字的使用詳解

    Java this關鍵字的使用詳解

    this 關鍵字是 Java 常用的關鍵字,可用于任何實例方法內指向當前對象,也可指向對其調用當前方法的對象,或者在需要當前類型對象引用時使用
    2021-11-11

最新評論

红河县| 陵川县| 金湖县| 巴林右旗| 灌阳县| 沁水县| 林口县| 鲁甸县| 谢通门县| 醴陵市| 广河县| 土默特右旗| 孝昌县| 南川市| 合作市| 普定县| 涿鹿县| 晋中市| 吉安市| 五指山市| 景洪市| 博野县| 清原| 洱源县| 揭阳市| 闽清县| 福海县| 遂平县| 邻水| 调兵山市| 自贡市| 边坝县| 安远县| 梁河县| 九龙城区| 广宁县| 红河县| 广西| 德清县| 湄潭县| 自治县|