- 博客(22)
- 收藏
- 关注
原创 java SE--Lambda表达式和Stream流
Lambda表达式是 jdk1.8 引入的一个新特性,它是函数式编程在Java中的一种体现。也是jdk1.8最值得学习的新特性,另一个就是流式编程。1.Lambda表达式的引入简化了匿名内部类的语法,让代码更加简洁明了。2.Lambda表达式提供了一种便捷的语法形式,使得函数可以作为参数传递给方法,或者作为返回值返回。3.Lambda表达式的引入使得Java在并行编程方面具备了更好的支持。4.Lambda表达式本质来讲,是一个匿名函数(匿名方法)。
2024-08-15 19:48:05
919
原创 Java SE--IO流
如果我们想在程序中操作或者描述一个文件夹或文件,可以使用File类型File类型在java.io包下File可以新建,删除,移动,修改,重命名文件夹,也可以对文件或者文件夹的属性进行访问;但是不能对文件的内容进行访问(读和写);常用的构造器:需要注意的是,构造器只负责接收程序员传入的文件路径,并不会判断这个文件路径是否真实存在目录的分隔符可以使用 File.separator来获取;我们首先可以描述一个文件,然后使用file.exists();
2024-08-13 20:55:50
805
原创 java SE--集合
Collection接口是List,Set,Queue接口的父接口,里面提供了子类的常用方法;List储存的是可以重复的,有序的数据,子类是arrayList(数组结构)和linkedList(双向链表)我们主要研究一下Collection接口中封装的方法首先利用多态的向上造型创建一个子类型对象c1,并向集合中添加元素,利用对象.add( )的方法,该类型的返回值是泛型变量;之后判断一个集合是否为空,返回值是一个boolean类型的变量;同样是使用对象名.isEmpty()的方法。
2024-08-12 08:52:49
592
原创 JAVASE
泛型指类型参数化, 在定义期间,不知道调用时会使用什么类型,就可以添加泛型形参,在使用时传入实参固定类型即可。泛型类: 泛型应用在类上。一般用在类名后,用尖括号括起来。用大写字母作为泛型参数。我们可以通过一个实例更好的理解我们首先定义了一个Person类,并提供泛型<T>,在传入成员变量时,就可以使用泛型来定义成员变量的类型,因为我们不知道在创建对象时会传入什么类型的对象,在提供构造器时,形参的类型就规定成泛型;在这里我们传入一个测试方法,分别调用构造器创建两个不同类型的Person对象;
2024-08-08 22:44:41
582
原创 JavaSE
1.1简介:因为正则表达式只能做一些简单的校验工作,像要做进一步复杂的工作,需要使用Pattern类和 Matcher类。字符串在真正的校验过程中,实际上底层维护了一个pattern对象,使用对象的相关方法进行校验;pattern类的构造器私有化了,因此我们不能通过构造器创建对象,但是可以利用工厂方法来创建对象: static compile(String regex):我们首先定义了一个正则表达式,要求第一位是字母,第二位是字母数字或下划线$,剩余的长度应该是7-9位。
2024-08-08 21:19:02
790
原创 Javase--Date
Date的学习:1. java.util包下的类2.用于日期、时间的描述3. 实际上时距离一个固定时间点1970年1月1日00:00:00的毫秒数4.我们常用的是格林威治时间:GMT UTC:世界调整时间5.固定时间点:说的其实是本初子午线的时间。因此北京时间是1970年1月1日8:00:00常用的构造器:Date(): 获取的是当前系统的时间Date(long time):获取距离纪元指定毫秒数的时间点。
2024-08-04 21:14:14
497
原创 javaSE基础
正则表达式是一种特殊的字符串,可以对一个特殊的字符串进行校验操作,检验算法;正则表达式是一套独立的语法,不是某一个编程语言独有的,因此可以在多种编程语言使用2.1字符类在使用正则表达式时,我们需要调用matches()方法,使用需要检查的字符串对象.matches()即可;//true判断“a”在不在abcdefg这个范围,打印结果时true;//true判断"o"在不在[^hg]这个范围,范围的含义是不是“h,g"这两个字符,返回的结果也是true;2.2预定义字符集。
2024-08-04 20:18:45
907
原创 抽象类,接口,枚举和内部类
在Java语言中,没有一个子类继承多个父类的语法,一个类想要同时继承两个类的属性和方法,所以这时我们需要使用接口 interface。接口可以理解为一个特殊的抽象类,也可以理解成为一种规范;需要注意:1.接口的关键字: interface2.接口里也可以提供成员变量(属性),默认使用public static final 来修饰,即常量。3.接口里不能提供构造器,更不能使用new关键字实例化对象,没有意义4.接口里可以提供成员方法,默认使用public abstract来修饰。
2024-07-30 21:58:51
942
原创 面向对象的三大特征
继承是面向对象最显著的一个特征。继承是从已有的类中派生出新的类,新的类能吸收已有的类的属性和方法,并能扩展新的能力。优点: 这种技术使得复用之前写过的代码非常容易,能大大缩短开发的周期,降低开发的费用已有的类被称为父类或超类,派生出的新类被称为子类,也叫派生类。在表示继承时需要使用extends关键字,语法如下修饰词 class 子类名 extends 父类名{子类的类体。
2024-07-29 22:36:22
943
原创 面向对象基础
构造方法也是一种方法,只是和普通的方法有区别:语法不同,构造方法没有返回值,这里说的没有返回值不是指返回值类型是void,而是返回值类型这个位置不存在;构造方法的名字,必须与类名保持一致;构造方法不能使用static修饰执行时机不同,普通的方法,可以随时调用,但是构造方法是在实例化对象时才会调用,需要使用new 关键字来调用;
2024-07-28 21:53:24
293
原创 Java基础
排序的原理:第一轮:拿数组的0索引与后面的元素一一比较如果满足条件就交换位置,时刻保证处于0索引位置的元素是最小的,顺次比较一轮后,0索引位置的元素就是最小值第二轮:拿1索引的元素与后面的元素一一比较,满足条件就交换位置,保证1索引处的位置的元素是较小值,比较一轮之后,1索引的元素就是较小值。每轮依次比较下去,比较轮数应该是数组的长度-1;可以通过分析得出: 外层循环控制排序的轮数,内层循环控制着每一轮元素之间的比较。
2024-07-28 17:39:15
985
原创 Java基础
数组是一种数据结构,可以用来储存一堆类型相同(基本数据类型和引用数据类型都可以)的并且是有序的数据的容器,我们可以通过数组的下标来访问数组中的元素。数组没有固定的类名,每一个数组都是对象(基本数据类型的数据,称作值,不叫对象)注意:数组是一个固定长度的容器,一旦初始化长度,就不能改变数组的长度,代表数组中可以储存多少个元素,类似容量元素,即储存在数组中的每一个数据,称作数组的元素。
2024-07-27 13:52:35
985
原创 Java基础
方法需要定义在类体中,方法是类体中的一员,每个方法之间都是并列的。语法如下:[访问权限修饰符] [其他修饰符] [返回值类型] 方法名([参数列表]){code //方法体return;注意:中括号[ ]表示可有可无的部分,需要的话就写上,如果不需要就不写,方法名是一种标识符,需要使用小驼峰命名法方法与方法间是并列平级的,不允许出现方法嵌套方法//定义一个方法: 返回两个int类型的变量的最大值if(a>=b){return a;}else{
2024-07-26 21:37:53
688
原创 Java基础
在循环中的作用是打断那一层的循环,继续向下执行后续代码,需要注意:break只能打断那一层的结构如果i= 10,就会打断循环,打印i的值我们可以通过代码发现,首先定义了一个int类型的答案是0~9之间的随机数,循环开始后会打印继续猜,我们把想要猜的数字打印在控制台,Scanner类会进行扫描,利用判断语句,如果相同,则输出猜对了,利用break关键字打破循环,如果猜大了或者猜小了会有提示。
2024-07-24 21:59:51
358
原创 Java流程控制
Java程序在运行时,会有以下三种执行结构:1.顺序结构:代码从上到下,依次执行,这是代码执行的基本结构。2.分支结构:代码执行到某一代码片段时,遇到了多种继续执行的可能性,需要选择一种可以执行的继续执行。3.循环结构:代码执行到某一片段时,由于某种条件,需要执行多次。
2024-07-24 21:23:56
946
原创 Java基础
= -+ *= /= %=这些是常用的赋值运算符,他们把等号后面的值或者变量赋值给等号前面的变量如: a+=b 相当于a = a + b-+: 如: a-=b 相当于a = a - b*=: 如: a*=b 相当于a = a * b/+: 如: a/=b 相当于a = a / b%=: 如: a%=b 相当于a = a % b。
2024-07-22 21:21:58
969
原创 CSS基础
文档的流层:css把整个页面当成一种有很多层数的结构我们所能看到的称之为最顶层,最底层称之为文档流层。所有的元素,默认都是布局在文档流层的。如果不在文档流层,就应该在其他层文档流层里的元素:- 块元素1. 单占一行2. 块元素的宽,默认状态下是要撑满父元素的,也就是由父元素决定3. 块元素的高,默认状态下是内容区的数据所占大小4. 块元素是垂直排列,自上而下。- 行内元素1. 只占本身大小2. 行内元素的宽和高是由内部的文字或元素决定的。
2024-07-20 16:31:54
855
原创 Java基础
上篇文章说到了数据类型转换,那么什么才是数据类型转换,在我们开发Java语言时,最初定义了某一类型的变量,并对其进行了初始化,但是我们又定义了一个新的数据类型变量,希望把原来变量里的值赋值给我们的新变量,那么此时就需要数据类型转换,数据转换分为两种类型:1.自动类型转换2.强制类型转换。
2024-07-20 10:50:44
1005
原创 Java基础
1.1标识符的概念:在Java语言中,标识符指的就是各种变量,函数,语句,而标识符就是给这些类,对象,方法来命名的。标识符的命名规则:①:可以由任意数量的数字,字母,下划线,$来组成,但是需要注意的是,不能以数字为开头②:大小写字母是敏感的,不能混用,比如 type 和Type并不相同。
2024-07-19 22:02:45
1014
原创 CSS基础
对于行内元素来说,他们是不支持设置垂直方向上的内边距,边框,外边距的,因为他们是被用内容数据撑起来的,但是如果想让这些垂直方向上的样式生效,可以使用display属性将行内元素转换为块元素来设置。这一部分我们介绍盒子模型,我们每一个标签(元素)都可以在浏览器的检查功能中(快捷键F12)显现为一个盒子,可以帮助我们更好的理解外边距,边框,内边距,内容区之间所占空间的关系。对于块元素来讲,每个都是独占一行,因此只会出现垂直方向上的外边距的重叠,即两个元素的相邻外边距可能发生重叠。
2024-07-18 22:00:12
876
原创 CSS基础知识
需要注意空格的存在,内联样式的缺点就是一次只能定义一个元素,不能定义多个元素,所以不怎么实用。。。内部样式表:内部样式表主要是通过head元素中的style标签来设置网页的样式,优点是可以作用于多个body里的元素,但是缺点是只能对当前网页有作用,涉及到跨网页操作就不可以了这就是一个利用了id选择器来更改网页样式,在body中对标签设置一个id属性即可实现,需要注意必须是 属性名:值 成一对的形式。
2024-07-17 21:38:57
557
原创 html相关基础
写字</label><input type="checkbox" id="book" name="hobby" value="book"> <label for="book">读书点我,跳转到某东官网
2024-07-16 21:49:25
308
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人