文档详情

JAVA笔试算法题及答案.pdf

发布:2017-09-21约1.88万字共24页下载文档
文本预览下载声明
1.现在输入n 个数字,以逗号,分开;然后可选择升或者降序排序 我的评论: 本题的splitStringByComma(String )方法纯属多余,可以用String 的split 方法一句话代 替,且可读性也更强,下面的一段话源自JDK1.6API,StringTokenizer 类已不再提倡使用, 保留仅为旧代码。 StringTokenizer 是出于兼容性的原因而被保留的遗留类(虽然在新代码中并不鼓励使 用它)。建议所有寻求此功能的人使用 String 的 split 方法或 java.util.regex 包。 importjava.util.*; publicclassbycomma{ public static String[] splitStringByComma(String source){ if(source null||source.trim().equals()) returnnull; StringTokenizer commaToker new StringTokenizer(source,,); String[]result new String[commaToker.countTokens()]; int i 0; while(commaToker.hasMoreTokens()){ result[i] commaToker.nextToken(); i++; } returnresult; } public staticvoidmain(String args[]){ String[] s splitStringByComma(5,8,7,4,3,9,1); int[]ii new int[s.length]; for(int i 0;iii.length;i++){ ii[i] Integer.parseInt(s[i]); } Arrays.sort(ii); //asc for(int i 0;iii.length;i++ ){ System.out.println(ii[i]); } //desc for(int i (s.length-1);i 0;i--){ System.out.println(ii[i]); } } } 2.编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符 串。但是要保证汉字不被截半个,如我ABC4,应该截为我AB,输入我ABC 汉DEF, 6,应该输出为我ABC而不是我ABC+汉的半个。 代码: public staticboolean isLetter(char c){ intk 0X80; return c/k 0?true:false; } public static int lengths(String strSrc){ if(strSrc null){ return 0; } int len 0; char[]strChar strSrc.toCharArray(); for (int i 0;istrChar.length;i++){ len++; if(!isLetter(strChar[i])) len++; } return len; } public static String subString(String origin,int len){ if(origin null ||origin
显示全部
相似文档