- 博客(21)
- 收藏
- 关注
原创 排序算法学习小结
它是一种简单的排序算法,通过重复地走访要排序的数列,一次比较两个相邻的元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢 “浮” 到数列的顶端,就像气泡上升一样,其时间复杂度为O(n²),是稳定的排序算法。:插入排序的工作原理是对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。
2025-01-20 20:02:11
1148
1
原创 JAVA学习
多线程:同时让程序做多件事情作用:提高效率应用场景:软件中的耗时操作、所有的聊天软件、所有的服务器并发:在同一时刻,有多个指令在单个CPU上交替执行并行:在同一时刻,有多个指令在多个CPU上同时执行多线程三种实现方法:继承Thread类:优点:编程比较简单,可以直接使用Thread类中的方法缺点:可以扩展性较差,不能再继承其他的类实现Runnable接口|实现Callable接口优点:扩展性强,实现该接口的同时还可以继承其他的类缺点:编程相对复杂,不能直接使用Thread类中的方法。
2024-11-02 23:12:57
886
原创 JAVA学习
作用:用于读写数据(本地文件,网络)输出流:程序-->文件输入流:文件-->程序字节流:可以操作所有类型的文件字符流:只能操作纯文本文件(用windows自带的记事本打开并且能读懂的文件)书写细节:创建字节输出流对象参数是字符串表示的路径或者File对象都是可以的如果文件不存在会创建一个新的文件,但是要保证父级路径是存在的。如果文件已经存在,则会清空文件写数据write方法的参数是整数,但是实际上写到本地文件中的是整数在ASCLL上对应的字符释放资源每次使用完流之后都要释放资源。
2024-10-30 23:03:39
702
原创 JAVA学习
单列集合,stream()默认方法双列集合 无 用Set方法getEntry;或者getValue数组 Arrays.stream( arr )一堆零散数据stream.of( )filter()过滤limit()获取前几个元素skip()跳过前几个元素distinct()元素去重concat()合并a和b两个流为一个流map()转换流中的数据类型注意:中间方法,返回新的Stream流,原来的Stream流只能使用一次,建议使用链式编程。
2024-10-28 17:28:19
285
原创 JAVA学习
双列集合的特点:双列集合一次需要存一对数据,分别为键和值键不能重复,值可以重复键和值一一对应的,每一个键只能找到自己对应的值键+值这个整体我们称之为“键值对”或者“键值对对象”,在Java中叫做“Entry对象”Map常见的API:put(k key,v value) 添加元素remove(key)根据键删除键值对元素void clear()移除所有键值对元素containskey(key) 判断集合是否包含指定的键containsvalue(value)判断集合是否包含指定的值。
2024-10-27 14:04:35
329
原创 JAVA学习
如果想要集合中的元素可重复用ArrayList集合,基于数组的(用的最多)如果想要结合中的元素可重复,而且当前的增删操作明显多于查询用LinkedList集合,基于链表的如果想要对集合中的元素去重用HashSet集合,基于哈希表的(用的最多)如果想要对集合中的元素去重,而且保证存取顺序用LinkedHashSet集合,基于哈希表和双链表,效率低于HashSet如果想要对集合中的元素进行排序用TreeSet集合,基于红黑树,后续也可以用List集合实现排序。
2024-10-23 22:38:36
935
原创 JAVA学习DAY7
帮助我们进行数学计算的工具类里面的方法都是静态的。常见的方法如下:abs:获取绝对值 absExact:获取绝对值ceil:向上取整 floor:向下取整 round:四舍五入max:获取最大值 min:获取最小值 pow:获取a的b次幂sqrt:开平方根 cbrt:开立方根random:获取0.0,1.0)之间的随机数。
2024-10-09 22:34:50
221
原创 JAVA开发拼图游戏
游戏描述:游戏界面功能:技术:JAVA SE,swing库和action event逻辑:这个拼图游戏是4*4的,定义一个二维数组来存储1~16;每个数字代表一个图片,游戏开始前打乱数组数据顺序,然后往界面插入图片(因为数组是乱序的,图片也是乱序的),图片中有一个是空白图片,图片数字为16,我们只需要移动16这个数字的图片,每次移动,刷新当前界面图片,当我们把拼图完成时,即数组排好序,即获得胜利。
2024-10-05 22:59:30
900
原创 JAVA学习DAY6
格式:public default 返回值类型 方法名(参数列表)范例:public default void show(){}
2024-09-29 22:14:09
1004
原创 JAVA学习DAY5
抽取共性时,无法确定方法体,就把方法定义为抽象的,强制让子类按照某种格式重写。:实际开发中,常量一般作为系统的配置信息,方便维护,提高可读性。使用父类型作为参数,可以接收所有子类对象,体现多态的。:包就是文件夹,用来管理各种不同功能的Java类。可以转换成真正的子类类型,从而调用子类独有功能。使用java.lang包中的类时,不需要导包。如果同时使用两个包中的同名类,需要用全类名。:地址值不能修改,内部的属性值可以修改。特例:如果方法中的代码是抽取其他方法中。使用同一个包中的类时,不需要导包。
2024-09-28 22:04:22
370
原创 JAVA学习DAY4
Manager mg1=new Manager("123","小蜗",8000,"100000");方法重写:在继承体系中,子类出现了和父类中一模一样的方法声明,我们就称子类的这个方法是重写的方法。System.out.print(super.name)从父类成员位置开始往上找。System.out.print(this.name)从本类成员位置开始往上找。先在局部位置找,本类成员位置找,本类成员位置找,父类成员位置找,逐级往上。System.out.println("炒菜");
2024-09-27 23:45:55
625
原创 JAVA学习DAY3
工具类代码如下:public class ArrayUtil {//定义个数组返回形式为[,,]的工具类private ArrayUtil(){}//私有化方法public static String printArr(int[] arr){//静态方法//不用strjoin原因,其add方法只能加入字符串i++){//strbuilt可以添加整数}else {
2024-09-25 22:33:59
593
原创 Java学习DAY1
表达式为True给值T,为false给值F;引用数据类型:数据值是存储在其他空间中,自己空间中存储的是地址值。|| 先判断前 一个T则为T(左边能确定结果则右边不执行)三种类型的数据在运算的时候,变为int 进行 计算。基本数据类型:数据值是存储在自己的空间中(栈内存)&& 先判断前者后判断后者 两者为T则为T。关系运算符 ==、!=、>、>=、
2024-09-23 22:20:36
319
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人