1. 程式人生 > >Java小程式碼(可直接用)

Java小程式碼(可直接用)

1.把List<Map<String,Object>>轉換成(' ',' ',...)格式的字串

String careers = "(";
        if(null!=careerDataList && careerDataList.size()!=0)
        {
            for(Map<String, Object> careerData:careerDataList)
            {
                //careers.add(careerData.get("career").toString());
                String career = careerData.get("career").toString();
                career = career.replace("'", "\\\'");
                careers += "'"+career+"',";
            }
        }
        careers = careers.substring(0,careers.length()-1)+")";

2.把數字(123456)轉換成(123,456)這樣帶逗號的格式

P.S. 小數部分採取向上取整

private static String numberBetter(String num)
    {
        //null ,"","N/A"等 非數字的 不處理
        if(null == num || "".equals(num) || "-".equals(num) || "N/A".equals(num))
        {
            return num;
        }
        //已經是標準格式 即帶,的 直接返回
        if(num.contains(","))
        {
            return num;
        }
        String number = "";
        if(num.contains("."))
        {
            //手動 向上取整--只要有小數點,就進1
            String[] nums = num.split("\\.");
            //正數
            String numberPart = "";
            if(!nums[0].contains("-"))
            {
                int zheng = Integer.parseInt(nums[0].trim());
                int xiao  = Integer.parseInt(nums[1].trim());
                if(xiao>0)
                {
                    zheng += 1;
                }
                numberPart = zheng+"";
            }else
            {
                int zheng = Integer.parseInt(nums[0].split("-")[1].trim());
                int xiao  = Integer.parseInt(nums[1].trim());
                if(xiao>0)
                {
                    zheng -= 1;
                }
                numberPart = zheng+"";
            }
            return numberBetter(numberPart);
        }else
        {
            StringBuffer numberB = new StringBuffer();
            char[] nums = num.toCharArray();
            for(int i=0;i<nums.length;i++)
            {
                numberB.append(nums[i]);
                if(i%3==(nums.length%3-1<0?2:nums.length%3-1))
                {
                    numberB.append(",");
                }
            }
            number = numberB.toString();
        }
        if(number.endsWith(","))
        {
            number = number.substring(0,number.length()-1);
        }
        return number;
    }

3.把字串中的數字和文字分離

P.S.需保證字串中只出現一處數字(eg:今天是2017年,11月,6日),可以用,切分字串再使用這個方法

(我這個方法是工作中需要把美元歐元轉換成人民幣,沒有一句話多個數字的情況,最近在研究正則,過幾天也許可以補一個字串允許多個數字的)

private static String[] splitValue(String t_values)
    {
        String[] strParts = new String[3];
        String ex = "";
        String fee = "";
        String sub = "";
        //去逗號,確保後面是純數字
        //t_values = t_values.replace("$", "").replace("美元", "").replace("歐元", "").replace(" ", "");
        //正則校驗數字
        String pattern = "\\d+";
        Pattern r = Pattern.compile(pattern);
            //經過去小數點 從$945.00每小時變成$945每小時
            if(t_values.contains("/"))
            {
                sub = t_values.split("/")[1];
                t_values = t_values.split("/")[0];
                String[] subs = t_values.split("");
                List<String> xiaoshu = new ArrayList<String>();
                for(String values:subs)
                {
                     Matcher m = r.matcher(values);
                     if (m.find( ))
                     {
                         xiaoshu.add(m.group());
                     }
                }
                for(String xs:xiaoshu)
                {
                    fee += xs;
                }
                if(t_values.indexOf(fee) > 0)
                {
                    ex = t_values.split(fee)[0];
                }
            }else
            {
                String[] subs = t_values.split("");
                List<String> xiaoshu = new ArrayList<String>();
                for(String values:subs)
                {
                     Matcher m = r.matcher(values);
                     if (m.find( ))
                     {
                         xiaoshu.add(m.group());
                     }
                }
                if(null != xiaoshu && xiaoshu.size()!=0)
                {
                    for(String xs:xiaoshu)
                    {
                        fee += xs;
                    }
                    if(t_values.indexOf(fee) > 0)
                    {
                        ex = t_values.split(fee)[0];
                        if(t_values.split(fee).length==2)
                        {
                            sub = t_values.split(fee)[1];
                        }
                    }else if(t_values.indexOf(fee) == 0)
                    {
                        sub = t_values.substring(xiaoshu.size());
                    }else
                    {
                        System.out.println("*");
                    }
                }else
                {
                    ex = t_values;
                }
            }
            if("".equals(sub))
            {
                sub = "元";
            }else if(sub.startsWith("每"))
            {
                sub = "元/"+sub.substring(1);
            }else
            {
                sub = "元"+sub;
            }
        sub = sub.replace("元萬", "萬元");
        strParts[0] = ex;
        strParts[1] = fee;
        strParts[2] = sub;
        return strParts;
    }

4.把List轉換成Json格式

P.S.由於工作資料庫結構及前臺js的控制元件寫法,要求value的是數字格式,所以沒有拼引號

private static String toJson(List<Map<String, Object>> list)
    {
        String result = "";
        if(list != null && list.size()!=0)
        {
            result = "[";
            for(Map<String, Object> map:list)
            {
                if(map != null && map.size()!=0)
                {
                    result += "{";
                    Set<Entry<String, Object>> entrySet = map.entrySet();
                    for(Entry<String, Object> entry:entrySet)
                    {
                        if("value".equals(entry.getKey()))
                        {
                            result += "'"+entry.getKey()+"':"+entry.getValue()+",";
                        }else
                        {
                            result += "'"+entry.getKey()+"':'"+entry.getValue()+"',";
                        }
                    }
                    result = result.substring(0,result.length()-1);
                    result += "},";
                }
            }
            result = result.substring(0,result.length()-1);
            result += "]";
        }
        return result;
    }

相關推薦

Java程式碼接用

1.把List<Map<String,Object>>轉換成(' ',' ',...)格式的字串 String careers = "(";         if(null!=careerDataList && careerDataL

c# excel 導入 與 導出接用

enter access arr message owin dateutil win toarray port c#操作excel方式很多 采用OleDB讀取EXCEL文件: 引用的com組件:Microsoft.Office.Interop.Excel.dll 讀

Excel較大規模資料處理例項接用python實現

問題是這樣的, 我是我們學校的寒招隊伍的負責人。但是管理的人數實在是太多了。所以在這個地方的,我就想用下指令碼去幫助自己進行管理。從效果來看,還是非常方便的。 故事情節: 這次,我和兩三個小夥伴們要一起先舉辦個去全員大會。但是本來會議人員數量

微信程式 簡訊驗證 功能的實現附案例程式碼/前後端/接用

模組效果展示(小程式介面) 實現的功能 小程式端: 請求獲取簡訊驗證碼 兩次請求之間間隔至少一分鐘 填寫必填內容後,才能提交表單 手機號合法性檢驗 後臺: 接前臺請求後,

java、Android銀行卡校驗程式碼copy過去接用

親愛的同仁們:         最近專案中要本地校驗銀行卡賬號,後面總結出來,分享大家。         原理:         // Luhm校驗規則:16位銀行卡號(19位通用):// 1.將未帶校驗位的 15(或18)位卡號從右依次編號 1 到 15(18),位於奇數

微信程式檔案預覽原始碼可以接用

微信小程式的檔案預覽 微信小程式的檔案預覽需要先使用wx.downloadFile下載檔案,然後使用下載檔案的臨時路徑通過wx.openDocument進行檔案的預覽 wxml程式碼: <button bindtap='preview'>簡歷預覽&

java程序課堂作業03

java ont public 實現 int get 初始 小程序 util 使用類的靜態字段和構造函數,我們可以跟蹤某個類所創建對象的個數。請寫一個類,在任何時候都可以向它查詢“你已經創建了多少個對象?”。 思路:因為靜態初始化塊只運行一次,是一個很好的記錄次數的方法,定

常見演算法的java實現程式碼持續更新中

1.快速排序演算法 快速排序演算法的原理是:假設要排序的陣列是A[1]……A[N],首先任意選取一個數據(通常選用第一個資料)作為關鍵資料,然後將所有比它的數都放到它前面,所有比它大的數都放到它後面,這個過程稱為一躺快速排序,然後遞迴該演算法,就可以將陣列快速排序,常用實現

關於.NET HttpClient方式獲取微信程式碼二維碼

隨著微信小程式的火熱應用,市面上有關小程式開發的需求也多了起來。近來分析了一項生成有關生成微信小程式碼的需求——要求掃碼跳轉到小程式指定頁面(帶引數);看了下小程式官方文件,以及網上的例子,未看到多少有價值的採用C#呼叫小程式介面生成小程式碼的例子,於是拾起多年前的程式碼,略作分析嘗試

實現在Java中執行python程式碼或py指令碼傳引數

最近用Java寫服務端程式時,遇到這樣一個需求:需要把用python寫的機器學習演算法部署到伺服器上,然後Java執行py指令碼,並且取得演算法執行的結果。在網上找了很久,有些跑不通,有些是基於windows的,我的伺服器是linux的,遇到了不少坑= =好不容易解決了,記錄

Java故事

時間 abs 十年 caption out 創建 long ger i++ 1 import java.util.Date; //導入包 2 public class Test11 { 3

Java案例行星移動

println dmi dap ova gre 建議 his 矩形 graphic Java小案例 行星移動:參考:三百集 使用軟件:idea2017,java 1,圖片集:這裏 (idea圖片源放在target目錄下,才能訪問到),建議從小往上看。。。 2,定義MyFr

Java案例-逃離迷宮

class hide open isempty adl isp view rgs *** Java小案例-(逃離迷宮) 一,迷宮需求描述: 1,用戶輸入迷宮圖(限制方形):字母1位墻,0為通,e為出口,m為入口,*為已訪問的位置,用外圍1圍住迷宮 2,運行軌跡右,左,下,上

關於java的一些知識課程作業02

整型 公開 實例 -1 更多 nbsp 使用 默認 第一個 1,在java源代碼中加空格註釋不會影響程序的編譯速度。 2,一個java類文件中真的只能有一個公有類嗎? 如果只在第一個public類裏面定義實體,或者兩個都不定義並沒有報錯且程序可以運行。每個編

java.lang下面有一個接口:Comparable比較的

一個 情況下 span UNC lis fat 只有一個 比較 ati 對於自定義對象,Sort不知道規則,所以無法比較。這種情況下一定要定義排序規則。方式有兩種: java.lang下面有一個接口:Comparable(可比較的) 可以讓自定義對象實現一個接口,這個接口只

java】POP面向過程程式設計、OOP面向物件程式設計、AOP面向切面程式設計三種程式設計思想的區別和聯絡

相關閱讀 【小家java】java5新特性(簡述十大新特性) 重要一躍 【小家java】java6新特性(簡述十大新特性) 雞肋升級 【小家java】java7新特性(簡述八大新特性) 不溫不火 【小家java】java8新特性(簡述十大新特性) 飽受讚譽 【小家java】java9

呆呆組四則運算檢驗評分

要求:輸入一個整形陣列,數組裡有正數也有負數。陣列中連續的一個或多個整陣列成一個子陣列,每個子陣列都有一個和。如果陣列A[0]……A[j-1]首尾相鄰,允許A[i-1], …… A[n-1], A[0]……A[j-1]之和最大。同時返回最大子陣列的位置。求所有子陣列的和的最大值。

Java實現貪吃蛇遊戲附完整原始碼

今天我就從零開始來完成這個小遊戲,完成的方式也是一步一步的新增功能這樣的方式來實現。 第一步完成的功能:寫一個介面 大家見到的貪吃蛇小遊戲,介面肯定是少不了的。因此,第一步就是寫一個小介面。 實現程式碼如下: 第二步完成的功能:在介面上畫成一格一格的 我們見過的貪吃蛇遊戲

python學習之網站的編寫HTML,CSS,JS----------input系列的標籤詳解及示例程式碼上傳到伺服器form標籤

文章編排,我們首先來講一下input系列的各種內容,然後用一個示例程式碼來清晰的理解其中特定的含義 input系列: 1.輸入文字內容: <input type="text" name="user"/>起個名字易於在伺服器端進行處理 2.輸入密碼內容:

python爬蟲爬取全站url,完美demo防止連結到外網等各種強大篩選

上次完成的url爬取專案並不能滿足需求,在此完成了一個更為強大的爬取程式碼,有需要的可以直接執行,根據自己爬取的網站更改部分正則和形參即可。前排提示:執行需要耐心,因為幾千個url爬完的話,還是建議花生瓜子可樂電影準備好。 話不多說,直接上程式碼,程式碼有註釋,很容易理解。