java疯狂讲义第四章练习题
生活随笔
收集整理的這篇文章主要介紹了
java疯狂讲义第四章练习题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.按照取子字符串,中文占兩個字節,英文占一個字節
package practice;public class substring{public static String getSubstring(String s, int start, int end){String r = new String(s);String result = "";int leneed = end - start; int length = 0;int i = start;if(r.length() == r.getBytes().length)return s.substring(start, end);else{while(i<end && length <= leneed){if(isHan(r.charAt(i))){length += 2;}else{length += 1;}result = result + r.charAt(i);i += 1;}return result;}}public static boolean isHan(char a){return a >= 0x4E00 && a <= 0x9FA5; }public static void main(String[] args){String test = "中a國bc中國中國";System.out.println(getSubstring(test, 1, 10));} }tip: 通過a >= 0x4E00 && a <= 0x9FA5;來判斷一個字符是否為中文
2.把浮點數字表示的錢的數量用中文讀法來表示
public class Change{private static String[] nums = {"零", "壹", "貳", "叁", "肆", "伍", "陸", "柒", "捌", "玖"};private static String[] units = {"", "拾", "佰", "仟", "萬"}; //"個"用來充數public static String ChangeTo(double s){int intpart = (int)s;double depart = s - intpart;String result = "";String r1 = DealInt(intpart);String r2 = DealDe(depart);return result = result + r1 + "元" + r2;}public static String DealInt(int intpart){String s = "" + intpart;String r = "";int size = s.length();int unit = size; //用來計算單位的索引for(int i = 0; i < size; i++){int num = s.charAt(i) - 48;if(num != 0) {r = r + nums[num] + units[(unit-1)%4];}else if(r.charAt(r.length()-1) != '零') {r = r + "零";}if(unit == 5) {if(r.charAt(r.length()-1) == '零') r = r.substring(0, r.length()-1) + "萬";else r = r + "萬";}unit = unit - 1;}if(r.charAt(r.length()-1) == '零') return r.substring(0, r.length()-1);else return r;}public static String DealDe(double depart){String s = "" + depart;String r = "";if(s.charAt(2) != '0') r = r + nums[s.charAt(2)-48] + "角";if(s.charAt(3) != '0') r = r + nums[s.charAt(3)-48] + "分";return r; }public static void main(String[] args) {double s = 40520562.253;System.out.println(ChangeTo(s));} }tip: 不能用(int)來把char類型強制裝換為整數,要通過char - 48才能得到正確結果
總結
以上是生活随笔為你收集整理的java疯狂讲义第四章练习题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 两个bat文件
- 下一篇: python之os、sys和random