登录
  • #刷题

编程‌‌‍‍‌‍‍‌‌‍‌‌‌‌‍‍‌‌‌‍‍‍‍‍‍‌‍‍‌‍‍‍小技巧 Clean Code in Java

david_smith
2277
21
最近刷题的时候发现,一些小技巧可以节省编程时间,减少出错的概率,在面试中很有用。

不多说,直接上代码

1, 求数组最大值,最小值,和
[br][/br][br][/br]int[] array = {3,2,1,5,4};[br][br][/br]int sum = 0, min = Integer.MAX_VALUE, max = Integer.MIN_VALUE;[br][/br][br][/br]for (int i = 0; i < array.length; i++) {[br][/br][br][/br]     sum += array[i];[br][/br][br][/br]     min = Math.min(min, array[i]);[br][/br][br][/br]     max = Math.max(max, array[i]);[br][/br][br][/br]}[br][/br][br][/br]上面的代码可以被替换为[code]int sum = Arrays.stream(array).sum();[br][/br][br][/br]int min = Arrays.stream(array).min().getAsInt();[br][/br][br][/br]int max = Arrays.stream(array).max().getAsInt();[/code]2, 判断一个String是不是都是数字[code]String str = "01223";[br][/br][br][/br]boolean isAllDigit = true;[br][/br][br][/br]for (int i = 0; i < str.length(); i++) {[br][/br][br][/br]     if (str.charAt(i)  < '0' || str.charAt(i) > '9') {[br][/br][br][/br]         isAllDigit = false;[br][/br][br][/br]         break;[br][/br][br][/br]     }[br][/br][br][/br]}[br][/br][br][/br][/code]上面的代码可以被替换为, [url]https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html[/url][code]boolean isAllDigit = str.matches("\d*");[/code]暂时想到这两个,抛砖引玉,希望大家也分享一下类似的小技巧,真的在面试中很节约时间。[/i][/i][/i]
21条回复
热度排序

发表回复