public void testParallel(){
long[] arrayOfLong = new long [ 20000 ]; //1.给数组随机赋值
Arrays.parallelSetAll( arrayOfLong,
index -> ThreadLocalRandom.current().nextInt( 1000000 ) ); //2.打印出前10个元素
Arrays.stream( arrayOfLong ).limit( 10 ).forEach( i -> System.out.print( i + \ System.out.println();
//3.数组排序
Arrays.parallelSort( arrayOfLong ); //4.打印排序后的前10个元素
Arrays.stream( arrayOfLong ).limit( 10 ).forEach( i -> System.out.print( i + \ System.out.println(); } /**
* 10.JVM的PermGen空间被移除:取代它的是Metaspace(JEP 122)元空间 */ @Test
public void testMetaspace(){
//-XX:MetaspaceSize初始空间大小,达到该值就会触发垃圾收集进行类型卸载,同时GC会对该值进行调整
//-XX:MaxMetaspaceSize最大空间,默认是没有限制
//-XX:MinMetaspaceFreeRatio在GC之后,最小的Metaspace剩余空间容量的百分比,减少为分配空间所导致的垃圾收集
//-XX:MaxMetaspaceFreeRatio在GC之后,最大的Metaspace剩余空间容量的百分比,减少为释放空间所导致的垃圾收集 } }
引用到的相关类:
public interface JDK8Interface1 {
//1.接口中可以定义静态方法了 public static void staticMethod(){
System.out.println(\接口中的静态方法\ }
//2.使用default之后就可以定义普通方法的方法体了 public default void defaultMethod(){
System.out.println(\接口中的默认方法\ }
}
public interface JDK8Interface2 {
//接口中可以定义静态方法了 public static void staticMethod(){
System.out.println(\接口中的静态方法\ }
//使用default之后就可以定义普通方法的方法体了 public default void defaultMethod(){
System.out.println(\接口中的默认方法\ } } /** *
* @ClassName:RepeatingAnnotations
* @Description:重复注解@Repeatable * @author diandian.zhang
* @date 2017年3月31日下午3:48:13 */
public class RepeatingAnnotations { @Target( ElementType.TYPE )
@Retention( RetentionPolicy.RUNTIME ) public @interface Filters { Filter[] value(); }
@Target( ElementType.TYPE )
@Retention( RetentionPolicy.RUNTIME ) @Repeatable( Filters.class ) public @interface Filter { String value(); String value2(); };
@Filter( value=\ @Filter( value=\
//@Filters({@Filter( value=\),@Filter( value=\value2=\注意:JDK8之前:1.没有@Repeatable2.采用本行“注解容器”写法 public interface Filterable { }
public static void main(String[] args) {
//获取注解后遍历打印值
for( Filter filter: Filterable.class.getAnnotationsByType( Filter.class ) ) { System.out.println( filter.value() +filter.value2()); } } } /** *
* @ClassName:Annotations
* @Description:新增类型注解:ElementType.TYPE_USE 和ElementType.TYPE_PARAMETER(在Target上)
* @author diandian.zhang
* @date 2017年3月31日下午4:39:57 */
public class Annotations {
@Retention( RetentionPolicy.RUNTIME )
@Target( { ElementType.TYPE_USE, ElementType.TYPE_PARAMETER } ) public @interface NonEmpty { }
public static class Holder< @NonEmpty T > extends @NonEmpty Object { public void method() throws @NonEmpty Exception { } }
public static void main(String[] args) {
final Holder< String > holder = new @NonEmpty Holder< String >();
@NonEmpty Collection< @NonEmpty String > strings = new ArrayList<>(); } }
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库JDK8新特性(2)在线全文阅读。
相关推荐: