Java
Mudrock__
这个作者很懒,什么都没留下…
展开
-
编译型语言与解释型语言详解_Java什么是编译与解释共存的语言
换句话说,只要平台安装了对应的解释器,就可以直接运行源码,不同的平台上运行同一段源码,得到的结果是相同的。其实,通常我们都说C语言是编译型语言,但其实C语言的解释器也是存在的,例如Ch,所以C语言所谓的"编译型语言",只是指其主流实现方式为编译,并不代表其不能进行解释;解释型语言可直接运行源码,在运行源码时,解释器逐行将源码翻译为机器码,但不生成可执行文件,也就是说再次运行源码时需要再次进行解释,所以解释型语言无法脱离开发环境运行,而且运行效率低于编译型语言,甚至存在数量级的差距。"一次编译,无限运行"原创 2023-01-07 02:10:01 · 2115 阅读 · 0 评论 -
Java_Stream流式计算
定义:支持顺序和并行聚合操作的元素序列Stream流本身并不储存数据Stream流属于管道流,仅可使用一次;二次使用会抛出异常。原创 2022-09-26 02:05:57 · 514 阅读 · 0 评论 -
Java_lambda表达式
3.当方法体仅有一行时,可省略花括号;若该行为 return ,则需要连return一同省略。通过lambda表达式,对于函数式接口,可不编写其实现类,而直接通过lambda表达式。2.当方法仅有一个参数时,可仅写参数名,省略括号(无参数或多个参数时括号不可省略)lambda表达式仅适用于函数式接口(接口内仅有一个方法的接口称为函数式接口)1.可省略方法的参数类型。原创 2022-08-08 21:30:36 · 180 阅读 · 0 评论 -
Java_四大函数式接口
函数式接口(Functional Interface)就是有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。原创 2022-09-25 22:16:37 · 554 阅读 · 0 评论 -
Java_lambda中引用的局部变量为什么必须为final类型
关于effectively final:即实际上的final,这是Java1.8版本中的新特性,编译器会尝试给局部变量加上final关键字,若变量在此之前未被修改则可成功;Java为了应对这种情况,存在一种机制:若内部类引用了局部变量,则会在内部类中创建该局部变量的副本,如此一来局部变量就"成为"了内部类的成员变量,生命周期与内部类对象同步。此时可能会产生一个问题:方法结束,栈帧出栈,局部变量生命周期结束,但对象尚未被GC,若此时对象调用局部变量,将无法调用;1.局部变量类型为final。原创 2022-09-23 22:44:07 · 980 阅读 · 0 评论 -
Java_移位运算简述
3.取补码:1111 1111 1111 1111 1111 1111 1111 1110 + 1 = 1111 1111 1111 1111 1111 1111 1111 1111。可知,-1的二进制码为1111 1111 1111 1111 1111 1111 1111 1111。1.取原码:0000 0000 0000 0000 0000 0000 0000 0001。2.取反码:1111 1111 1111 1111 1111 1111 1111 1110。运算规则:舍弃指定位数低位,高位补0。原创 2022-09-19 17:24:59 · 288 阅读 · 0 评论 -
Java_位运算符简述
运算规则: 1&1=1,1&0=1,0&0=0(两侧数存在1时结果就为1,两侧数均为0时结果才为0)运算规则: 1&1=1,1&0=0,0&0=1(两侧数相同时结果为0,两侧数不同时结果为1)运算规则:1&1=1,1&0=0,0&0=0(两侧数均为1时结果才为1,否则结果为0)示例:1010&0101=0000。示例:1010|0101=1111。示例1010^0101=1111。原创 2022-09-19 16:59:05 · 285 阅读 · 0 评论 -
集合_Collection_ArrayList与LinkedList的选择
ArrayList与LinkedList由于底层的实现不同,所以对于增删与改查的效率不同,实际开发中根据增删需求多还是改查需求多灵活选择不同的List。原创 2022-09-16 20:47:24 · 85 阅读 · 0 评论 -
Java_链表
Java_链表原创 2022-09-15 23:21:39 · 230 阅读 · 0 评论 -
Java_数组
对于数组中存在大量重复元素时 使用稀疏数组存储数据可大大减少资源开销。稀疏数组三列分别代表: x坐标 y坐标 元素的值。另外 对于稀疏数组的说明均写在注释中 不再赘述。后续可根据需要为数组元素赋值。...原创 2022-08-05 00:35:37 · 137 阅读 · 0 评论 -
Java_递归
程序到达第五层后开始产生返回值 返回值与上一层的因数相乘后再作为返回值返回再上一层 直至返回至第一层 第一层作为方法的最终返回值返回给调用者。if (x == 1) return 1 : 递归的结束条件。第二层: (x-1)*method(x-2)第三层: (x-2)*method(x-3)第四层: (x-3)*method(x-4)当然 若传入参数为1 则在第一层直接返回1 无递归行为。第一层: x*method(x-1)第五层: return 1。...原创 2022-08-04 15:52:42 · 292 阅读 · 0 评论 -
Java_可变参数
形式: 类型后添加"..." 本质上为数组 通过下标取值注意事项: 必须为方法参数中的最后一个参数 且一个方法中仅可存在一个可变参数原创 2022-08-04 14:04:13 · 87 阅读 · 0 评论 -
Java_Scanner
有效字符后的空白作为结束符 空白后的有效字符需另行读取(即无法读取空白)在完成读取后 需要手动关闭scanner---方法则以换行符作为结束符(即可读取换行符前的所有空白)在单次读取时可直接通过。将忽略有效字符前的所有空白 并将。来判断是否还存在未读取数据。...原创 2022-08-02 17:05:58 · 149 阅读 · 0 评论 -
Java_基础
单行注释多行注释文档注释(配合JavaDoc使用)标识符和关键字标识符 标识符范围:接口名、类名、方法名、变量名、常量名...... 标识符规则: 1.标识符只能由数字、字母、下划线"_"以及美元符号"$"构成,不能包含其它字符 2.标识符不能以数字开头 3.Java 关键字与保留字(当前版本Java未使用,但后续版本可能会使用的"关键字")不能作为标识符原创 2022-06-02 21:45:18 · 93 阅读 · 0 评论