在阅读了c#的隐藏特性之后,我想知道Java的隐藏特性有哪些?
当前回答
并不是一个真正的功能,但它让我笑,goto是一个保留词,除了提示javac戳你的眼睛什么也不做。只是想提醒你,你现在在天堂。
其他回答
我投票给java.util.concurrent,因为它的并发集合和灵活的执行器允许线程池、计划任务和协调任务。DelayQueue是我个人最喜欢的,其中元素在指定的延迟后才可用。
timer和TimerTask可以安全地休息了。
而且,它不是完全隐藏的,而是在与日期和时间相关的其他类不同的包中。timeunit在纳秒、微秒、毫秒和秒之间转换时很有用。
它比通常的someValue * 1000或someValue / 1000读起来要好得多。
我今天才(重新)了解到$是Java中方法或变量的合法名称。与静态导入相结合,可以生成一些可读性稍强的代码,这取决于你对可读的看法:
http://garbagecollected.org/2008/04/06/dollarmaps/
静态导入可以“增强”语言,这样你就可以以类型安全的方式做一些漂亮的文字工作:
List<String> ls = List("a", "b", "c");
(也可以做映射,数组,集)。
http://gleichmann.wordpress.com/2008/01/13/building-your-own-literals-in-java-lists-and-arrays/
更进一步说:
List<Map<String, String>> data = List(Map( o("name", "michael"), o("sex", "male")));
我知道这是在1.5版中添加的,但是新的enum类型是一个很棒的特性。不必使用旧的“int enum模式”极大地帮助了我的一堆代码。看看JLS 8.9的甜肉汁你的土豆!
当我第一次注意到三元运算符等于一个简单的if-then-else语句时,我很惊讶:
minVal = (a < b) ? a : b;
推荐文章
- 在流中使用Java 8 foreach循环移动到下一项
- 访问限制:'Application'类型不是API(必需库rt.jar的限制)
- 用Java计算两个日期之间的天数
- 如何配置slf4j-simple
- 在Jar文件中运行类
- 带参数的可运行?
- 我如何得到一个字符串的前n个字符而不检查大小或出界?
- 我可以在Java中设置enum起始值吗?
- Java中的回调函数
- c#和Java中的泛型有什么不同?和模板在c++ ?
- 在Java中,流相对于循环的优势是什么?
- Jersey在未找到InjectionManagerFactory时停止工作
- 在Java流是peek真的只是调试?
- Recyclerview不调用onCreateViewHolder
- 将JSON字符串转换为HashMap