《51CTO下载-JAVA编程题》由会员分享,可在线阅读,更多相关《51CTO下载-JAVA编程题(8页珍藏版)》请在金锄头文库上搜索。
1、JAVA 编程题1现在输入 n 个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序,结果为,提供 resetimport java.util.*;public class bycommapublic static String splitStringByComma(String source)if(source=null|source.trim().equals()return null;StringTokenizer commaToker = new StringTokenizer(source,);String result = new Stringcomm
2、aToker.countTokens();int i=0;while(commaToker.hasMoreTokens()resulti = commaToker.nextToken();i+;return result;public static void main(String args)String s = splitStringByComma(5,8,7,4,3,9,1);int ii = new ints.length;for(int i = 0;i=0;i-)System.out.println(iii);2金额转换,阿拉伯数字的金额转换成中国传统的形式如:(¥1011)(一千零一
3、拾一元整)输出。package test.format;import java.text.NumberFormat;import java.util.HashMap;public class SimpleMoneyFormat public static final String EMPTY = ;public static final String ZERO = 零;public static final String ONE = 壹;public static final String TWO = 贰;public static final String THREE = 叁;public
4、static final String FOUR = 肆;public static final String FIVE = 伍;public static final String SIX = 陆; public static final String SEVEN = 柒;public static final String EIGHT = 捌;public static final String NINE = 玖;public static final String TEN = 拾;public static final String HUNDRED = 佰;public static f
5、inal String THOUSAND = 仟;public static final String TEN_THOUSAND = 万;public static final String HUNDRED_MILLION = 亿;public static final String YUAN = 元;public static final String JIAO = 角;public static final String FEN = 分;public static final String DOT = .;private static SimpleMoneyFormat formatter
6、 = null;private HashMap chineseNumberMap = new HashMap();private HashMap chineseMoneyPattern = new HashMap();private NumberFormat numberFormat = NumberFormat.getInstance();private SimpleMoneyFormat() numberFormat.setMaximumFractionDigits(4);numberFormat.setMinimumFractionDigits(2);numberFormat.setGr
7、oupingUsed(false);chineseNumberMap.put(0, ZERO); chineseNumberMap.put(1, ONE);chineseNumberMap.put(2, TWO);chineseNumberMap.put(3, THREE);chineseNumberMap.put(4, FOUR);chineseNumberMap.put(5, FIVE);chineseNumberMap.put(6, SIX);chineseNumberMap.put(7, SEVEN);chineseNumberMap.put(8, EIGHT);chineseNumb
8、erMap.put(9, NINE);chineseNumberMap.put(DOT, DOT);chineseMoneyPattern.put(1, TEN);chineseMoneyPattern.put(2, HUNDRED);chineseMoneyPattern.put(3, THOUSAND);chineseMoneyPattern.put(4, TEN_THOUSAND);chineseMoneyPattern.put(5, TEN);chineseMoneyPattern.put(6, HUNDRED);chineseMoneyPattern.put(7, THOUSAND)
9、;chineseMoneyPattern.put(8, HUNDRED_MILLION);public static SimpleMoneyFormat getInstance() if (formatter = null)formatter = new SimpleMoneyFormat(); return formatter;public String format(String moneyStr) checkPrecision(moneyStr);String result;result = convertToChineseNumber(moneyStr);result = addUni
10、tsToChineseMoneyString(result);return result;public String format(double moneyDouble) return format(numberFormat.format(moneyDouble);public String format(int moneyInt) return format(numberFormat.format(moneyInt);public String format(long moneyLong) return format(numberFormat.format(moneyLong);public
11、 String format(Number moneyNum) return format(numberFormat.format(moneyNum);private String convertToChineseNumber(String moneyStr) String result;StringBuffer cMoneyStringBuffer = new StringBuffer();for (int i = 0; i 0; i-) cMoneyStringBuffer.insert(i, chineseMoneyPattern.get(EMPTY + moneyPatternCurs
12、or);moneyPatternCursor = moneyPatternCursor = 8 ? 1 : moneyPatternCursor +1;String fractionPart = cMoneyStringBuffer.substring(cMoneyStringBuffer.indexOf(.);cMoneyStringBuffer.delete(cMoneyStringBuffer.indexOf(.), cMoneyStringBuffer.length();while (cMoneyStringBuffer.indexOf(零拾) != -1) cMoneyStringB
13、uffer.replace(cMoneyStringBuffer.indexOf(零拾), cMoneyStringBuffer.indexOf(零拾) + 2, ZERO);while (cMoneyStringBuffer.indexOf(零佰) != -1) cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf(零佰), cMoneyStringBuffer.indexOf(零佰) + 2, ZERO);while (cMoneyStringBuffer.indexOf(零仟) != -1) cMoneyStringBuffer.re
14、place(cMoneyStringBuffer.indexOf(零仟), cMoneyStringBuffer.indexOf(零仟) + 2, ZERO);while (cMoneyStringBuffer.indexOf(零万) != -1) cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf(零万), cMoneyStringBuffer.indexOf(零万) + 2, TEN_THOUSAND);while (cMoneyStringBuffer.indexOf(零亿) != -1) cMoneyStringBuffer.re
15、place(cMoneyStringBuffer.indexOf(零亿), cMoneyStringBuffer.indexOf(零亿) + 2, HUNDRED_MILLION);while (cMoneyStringBuffer.indexOf(零零) != -1) cMoneyStringBuffer.replace(cMoneyStringBuffer.indexOf(零零), cMoneyStringBuffer.indexOf(零零) + 2, ZERO);if (cMoneyStringBuffer.lastIndexOf(ZERO) = cMoneyStringBuffer.length() -1)cMoneyStringBuffer.delete(cMoneyStringBuffer.length() - 1, cMoneyStringBuffer.length(); cMoneyStringBuffer.append(fractionPart);result = cMoneyStringBuffer.toString();return result;private String addUnitsToChineseMon