用 Java 7 语法开发 Android(安卓)应用
16lz
2022-07-09
虽然现在开发Android应用时使用Java 8还需要依赖于第三方工具,但是使用Java 7是不需要如此麻烦的。Android Kitkat SDK已经可以支持Java 7的语法了,因此,用这个版本以后的SDK即可以编译包含Java 7语法的代码,下文所有的代码都是在Android Studio IDE下用Kitkat SDK编译。
Java 7的几个语法改善虽然远不如Java 8的影响大,但是也能给开发人员带来一些显而易见的好处,挑几个常用的介绍一下。
> myMap = new HashMap>(); 在Java 7中,由于使用了类型推断,所以可以写得更简洁: Map> myMap = new HashMap();
详细的语法特性请参考http://docs.oracle.com/javase/7/docs/technotes/guides/language/enhancements.html#javase7,希望有更多的Android应用采用Java 7更简洁的语法。
——欢迎转载,请注明原文出处 http://blog.csdn.net/caowenbin ——
——欢迎关注微信号“曹文斌的软件思考”,共同探讨软件人生——
Java 7的几个语法改善虽然远不如Java 8的影响大,但是也能给开发人员带来一些显而易见的好处,挑几个常用的介绍一下。
二进制字面常量和辅助数字阅读的下划线
使用二进制常量在某此需要处理二进制数据的时候更易于阅读,甚至好于十六进制。同样,使用下划线在数字间进行分隔,也非常易于对代码的阅读。int anInt = 0b101;long creditCardNumber = 1234_5678_9012_3456L;
switch语句支持字符串比较
对于需要根据字符串进行多分支处理的情况,再也不用写一组if语句了,现在switch语句已经支持字符串,并且经过编译器优化后性能优于if语句。public String getTypeOfDayWithSwitchStatement(String dayOfWeekArg) { String typeOfDay; switch (dayOfWeekArg) { case "Monday": typeOfDay = "Start of work week"; break; case "Tuesday": case "Wednesday": case "Thursday": typeOfDay = "Midweek"; break; case "Friday": typeOfDay = "End of work week"; break; case "Saturday": case "Sunday": typeOfDay = "Weekend"; break; default: throw new IllegalArgumentException("Invalid day of the week: " + dayOfWeekArg); } return typeOfDay;}
泛型对象构造时的类型推断
对于泛型对象,在构造时需要同样指定具体类型,比如: Map使用try语句确保资源关闭
资源型对象的关闭是很麻烦的,以前的做法是要在finally块中调用close()方法,现在Java 7提供了更简洁的资源型try语句,可以确保资源被正确的关闭。如:
static String readFirstLineFromFile(String path) throws IOException { try (BufferedReader br = new BufferedReader(new FileReader(path))) { return br.readLine(); }}
在一个catch语句中包含多个Exception
老写法:
catch (IOException ex) { logger.log(ex); throw ex;catch (SQLException ex) { logger.log(ex); throw ex;}
新写法:
catch (IOException|SQLException ex) { logger.log(ex); throw ex;}
详细的语法特性请参考http://docs.oracle.com/javase/7/docs/technotes/guides/language/enhancements.html#javase7,希望有更多的Android应用采用Java 7更简洁的语法。
——欢迎转载,请注明原文出处 http://blog.csdn.net/caowenbin ——
——欢迎关注微信号“曹文斌的软件思考”,共同探讨软件人生——
更多相关文章
- 箭头函数的基础使用
- NPM 和webpack 的基础使用
- Python list sort方法的具体使用
- 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程
- android 使用html5作布局文件: webview跟javascript交互
- Android(安卓)Resource介绍和使用
- "Failed to fetch URL https://dl-ssl.google.com/android/repos
- 使用NetBeans搭建Android开发环境
- android 零星调试笔记