自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 问答 (2)
  • 收藏
  • 关注

原创 Stream流及其相关操作

Stream流生成流通过数据源(集合,数组等)生成流list.stream()中间操作一个流后面可以跟随零个或多个中间操作,其目的主要是打开流,做出某种程度的数据过滤、映射,返回一个新的流,交给下一个操作使用例如:filter();终结操作一个流只能有一个终结操作,当这个操作执行完毕后,流就被用光了,所以,这必定是流最后一个操作。例如:forEach();//使用stream流,输出list中以w开头的且长度大于3的字符串 ArrayList<String>

2021-05-11 16:13:25 181

原创 函数式接口

函数式接口有且仅有一个抽象方法的接口(在jdk8下可以有默认方法,静态方法)@FunctionalInterface 这个注解表示该接口是函数式接口常用的函数式接口Supplier接口Consumer接口Predicate接口Function接口Supplier接口该接口被称作生产型接口,如果我们指定了接口的泛型是什么类型,那么接口中的get方法就会生产什么类型的数据SupplierT get():获得结果 public static void main(String[] a

2021-05-11 10:50:33 125

原创 对象的访问定位

对象的访问定位java程序会通过栈上的reference数据来操作堆上的具体对象,由于reference类型在java虚拟机规范里只规定了它是一个指向对象的引用,并没有定义这个引用应该通过什么方式去定位,所以对象的访问方式也是由虚拟机实现的主流的访问方式主要有两种1.句柄2.直接指针使用句柄访问的话,java堆中将可能会划分出来一块内存作为句柄池,reference中存储的就是对象的句柄地址,而句柄中包含了对象实例数据与类型数据各自的具体的地址信息如果使用直接指针访问的话,java堆中对象的内存

2021-05-09 16:31:11 115

原创 对象创建的简要过程

对象创建的简要过程当虚拟机遇到一条字节码new指令的时候,首先检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类时候已经被加载,解析和初始化过 ,如果没有,那必须先执行相应的类加载过程虚拟机为新生对象分配内存​ 决定那种方式分配内存​ 解决分配内存时的安全问题(并发情况下)3.内存分配完成之后,虚拟机必须将分配到的内存空间都初始化为零值(0,null)4.对对象进行必要的设置(例如这个对象是哪个类的实例,如何才能找到类的元数据信息,对象的哈希码,对

2021-05-09 16:30:19 130

原创 java实现统计从键盘中输入的字符串中,每个字符的个数。

{ //从键盘中输入字符串 Scanner scanner = new Scanner(System.in); //接收字符串 String next = scanner.next(); //将字符串转换为字符数组 char[] chars=next.toCharArray(); //创建HashMap集合 HashMap<Character,Integer> map

2021-05-09 16:24:54 771

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除