自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

原创 项目的小结

1.服务端建立一个ConcurrentHashMap<> 用来存储在线用户,用户账号和socket然后,如果有个人发了信息,就去数据库中查询,然后根据这个在线用户进行传递信息。

2024-07-25 22:48:15 177

原创 实时更新UI界面

1:当一个用户发送一条需要实时更新的信息,我可以直接查找在线用户,通过在线用户来进行判断条件,发送更新请求2:用户在一个需要实时更新的界面时,就不断的向服务端发送请求,然后服务端,读取数据库,返回对应的信息,然后客户端对其界面进行更新,这里发送请求的的时间间隔比较不好掌握,3:用户在一个需要实时更新的界面时,就像服务端发送一个请求,服务端接受到请求,并不做任何处理,当某个变量变化时,服务端,返回一个更新信息,当然,这需要一个线程(监听一个变量是否改变)。

2024-07-24 00:42:09 263

原创 主控制类,项目小结,实时更新UI

按照我前一篇所说的,写好了主控制类,和第二线程接受服务端的信息,这时候就可以在接受信息,根据信息,不断利用主控之类中的找到控制类,然后再使用控制类中的方法。主控制类的用处:1:当你切换布局时,在初始化了主控类中的元素时,你可以直接使用,如果你没有主控制,切换布局时,new一个布局,你这样你混乱,更新ui界面也无法更新。2:如果你是使用的new一个布局,你前一个布局就会便成为空,因为没有东西指向它了,他会自动释放内存,后面切换回来就错了。

2024-07-22 00:18:35 462

原创 服务端,客户端,交互问题

今天写了一个更换头像的问题,采用一发一收的方式,不断进行方法的调用,这样就会有个最大的问题,我不同之间的控件,不断调用,然后调用过去调用过来,就会出错,并且最大的问题,就是我在这个这个布局类中更新了数据,然后用户的信息可以得到更新,但是我的布局最初已经搞好了,信息似乎是改不了,我再次调用实体类中的方法,导致最后程序出问题,找不到问题所在,这个最头疼采用一发一收,返回信息太乱,FXML文件的相互调用,更加乱,今天就是不断地的再改。

2024-07-18 23:55:25 333

原创 TCP socket通信,深入了解项目框架

客户端与服务端通过socket进行不断交互。

2024-07-17 00:01:35 317

原创 javafx场景切换,网络编程踩坑

在此之外,时常疑惑,多个fxml有各自的多个controller类,如何能够点击某个按钮切换场景呢,后来我发现,FXMLLoader.load()就是返回一个组件,进行执行load()时,相当于new了一个对象,就相当于是一个组件,点击按钮就可以直接new 一个scene并把Parent放进scene里面。

2024-07-15 00:07:56 340

原创 学习通er图和项目思路

ER图项目构思:用户功能:主要功能逻辑:

2024-07-12 00:00:07 249

原创 Java项目中,常用的SQL语句

在学习通项目中对账号的处理。忘记密码:修改用户信息。

2024-07-11 23:33:50 232

原创 Javafx利用fxml变换场景的小细节

在这个代码中,在JavaFX中,FXMLLoader是用来加载FXML文件并将其转换为Java对象(例如控制器类)的工具。当您使用FXMLLoaderFXMLLoader在整个过程中,FXMLLoader是使用JavaFX的后台线程(也称为JavaFX线程)来执行这些操作的,这是为了保持UI线程的响应性。这意味着在用户界面(UI)线程中,您不会看到任何阻塞,即使FXMLLoader正在执行耗时的操作。当FXMLLoader完成加载并调用load()方法时,它会返回一个Parent。

2024-07-09 23:44:56 931

原创 ����: �Ҳ������޷��������� javafx.fxml ԭ��: java.lang.ClassNotFoundException解决方法

这些配置看似由有空格,换行,实则没有。所以解决办法就是,重新配置你的vm环境,不要随便写空格,换行,如果你出现了这个问题,恭喜你,你应该会花很多时间去找解决方法。别问我怎么知道的...出现乱码的原因:配置vm时。

2024-07-05 16:24:06 499

原创 项目基础知识

数据库的连接(以前写qq项目时的代码)

2024-07-04 23:42:24 223

原创 JavaFx基础知识

舞台如此这样的一个框框,舞台只是这个框框,并不管里面的内容模态...源代码:launch();@Override//更换舞台角标//设置最小化//设置最大化//关闭//舞台大小@OverrideSystem.out.println("当前高度:" + t1.doubleValue());});//固定舞台大小//设置全屏//unified 没有详细的边框//默认窗口//透明//窗口始终在最前。

2024-07-04 22:02:54 725

原创 面向对象(下)

(有抽象方法的类只能被定义为抽象类,抽象类里可以没有抽象方法。

2024-07-03 16:53:34 309

原创 面向对象(上)

eg:在main方法中调用A类的a方法(参数 int ),虚拟机运行main到到达a方法时,在A堆区里面传入参数进行运行方法。当子类覆盖了父类的方法后,子类的对象无法访问父类中被覆盖的方法,但在子类方法中可以调用父类中被覆盖的方法。同样的,引用变量储存的是在堆区的地址,传入方法是在堆区的地址,如果在方法中对引用变量中对应堆区的变量进行改值后,在原方法中的变量的对象也更改了值。如果这里在方法中,传入引用数据类型参数,形参对应的值就是堆区的地址,这里如果对形参进行重新赋值,则不会改变原实参方法中的变量。

2024-07-02 23:55:52 701

原创 二分查找比较次数

1.查找到元素,最多比较次数(log2 n ) + 1次。2.顺序表中没找到,最少比较次数log2 n次。

2024-06-05 21:59:02 125

原创 java日志,面向对象

this代表调用者的地址值,区分局部变量和成员量比如我定义了一个student对象,在调用这个类里的方法时,如果有this,这里的this即是这个调用者的地址的成员。

2024-03-25 22:34:47 214

原创 Java学习日志

引用数据类型:Java中有俩种数据类型,其中主要有8中基本数据类型和引用数据类型,除了8中基本数据类型以外都是引用数据类型,8中基本数据类型分别是byte,short,int,long,char,boolean,float,double。

2024-03-24 22:09:03 316 1

原创 java基础操作

格式化代码,idea中ctrl + Alt + L ,

2024-03-24 15:22:17 155 1

原创 二级指针处理链表

如建立一个新链表,如果传入的是头节点head一级指针(空指针),则会导致函数结束后,head 的指向还是为空。如果使用一级指针,只能改变指针指向的值,并不能改变指针的值。

2024-03-21 20:54:15 255 1

原创 java学习日志

1.计算机文本储存:二进制(java基础07集)window+r键,输入cmd指令进入操作台。1.其他进制转换为10进制,我未进行安装,java入门第11集。编译为机械语言(011011...)javac是编译并生成一个编译文件。\t: 补齐8字符,或8字符的倍数。JVM虚拟机(运行代码的地方)JDK:Java的开发工具包。Java EE:服务器开发。JVM,核心类库,运行工具。光学三原色,红绿蓝,RGB。Java 直接编译运行,JRE:java运行环境。JavaSe:桌面应用。2.计算机的图片,颜色。

2024-03-20 21:47:40 220 1

原创 力扣106,105,重构二叉树

这里要先找出特殊的值,然后逐渐找出递归函数俩边的边界。//最大的收获分析这里面的边界问题。前序遍历和中序遍历重构二叉树。中序,后序重构二叉树。

2024-03-19 21:36:28 203 1

原创 中序遍历递归,迭代(栈),力扣99:恢复搜索二叉树

【代码】中序遍历递归,迭代(栈),力扣99:恢复搜索二叉树。

2024-03-18 22:22:28 377 1

原创 力扣135分糖果,贪心,力扣316,去除重复字符,贪心,单调栈

在弹出栈顶字符时,如果字符串在后面的位置上再也没有这一字符,则不能弹出栈顶字符。为此,需要记录每个字符的剩余数量,当这个值为 0 时,就不能弹出栈顶字符了。这里记录这些递增和递减序列是为了更好的加糖果,这里加糖果,相当于所有的递增序列的人都加一个糖果,递减就也是如此。在考虑字符 s[i] 时,如果它已经存在于栈中,则不能加入字符 s[i]。为此,需要记录每个字符是否出现在栈中。时间复杂度为O(n),遍历一遍,

2024-03-17 22:34:07 340 1

原创 负数取余,基数排序,

其中 int px = ((cur->val+100000)/i) % 10;的值,并加上一个足够大的数值100000。这是为了处理负数的情况,将所有数值都转换为非负数。: 最后对上一步得到的结果取模10,即得到当前基数位上的数字对应的桶索引。在编译器中,两个异号的数取余之后的结果取决于分子的符号。进行处理,计算出它在基数排序中对应的桶索引。: 然后将上一步得到的值除以当前基数位。综合起来,这句代码的作用是将当前节点。,这样可以得到当前基数位上的数字。这句代码是用来计算当前节点。

2024-03-11 22:33:35 321 1

原创 3——7队列,二叉树中的运用,递归

力扣199,二叉树的右视图。

2024-03-07 22:05:01 327 1

原创 3_6力扣

这里的验证二叉搜索树,原来就只想着左节点的数如果大于根节点或者右节点小于根节点就返回false,这里就会出错,因为比如 3 1 5 【】 【】0 7这个就不是二叉搜索树。这种情况,根节点的左右高度是相等的,但是以左孩子为根的时候,左右孩子的高度差比较大,所以遍历所有的节点,查询高度。力扣110平衡二叉树。

2024-03-07 19:56:06 383 1

原创 力扣--168

2.进行取余运算时,考虑是0~25,应该是1~26,所以应该使用 (tmp - 1 )% 26 + 1;这样就可以使tmp的值在1~26,并且这是按顺序的,Z就是26,1.在A~~Z这里纠结26进制,还是27进制。俩个链表,逆序储存着数,第一个代表的各位数。这里考虑进位,还有链表的长度不同。

2024-03-05 22:14:13 1720

原创 第二周,算法与数据结构

因为next数组是最长的前缀与后缀相等的长度,所以我们可以通过前一个next【j-1】进行计算next【j】,即如果第一次 j 处模式串的值与next【j-1】处模式串的值匹配相等时,就是前缀与后缀相等的长度直接加1,即next【j-1】+1. 如果不相等,那么进行j回溯前一个。这里的next数组代表的是后一位的前缀与后缀的最长长度,所以最后输出的时next【i+1】,因为算next数组时会算出next的最后一位,相当于最后一位的后一位不匹配返回的下标。位上,最长的前缀与后缀值。这里的完全时数据结构。

2023-12-24 23:42:26 392 1

原创 数据结构与算法第一周(学习总结)

2.桶排序:(浪费空间,得到速度)最高次数(最坏情况)。1.快速排序(O(n^2))位运算的计算速度快于加减法。

2023-12-17 21:33:57 575

原创 第13周 学习总结

这周刷的题比较少,感觉学疲了,这周还是就做了个小小游戏。井字棋(这是第一版本),感觉就比较拉,并且这个还有很多bug的,后面有时间再优化下吧。emmm,发现这个有必不输的算法后就感觉这个很容易找出规律,就感觉有点无聊了,但这个有点培养全局思维的,一般般吧,这周要忙起学习了,!这里的t代表下标,如果前面的数小于后面的数,就把下标减一,这样就可有从新赋值,从而删去了小的数。这道题,主要是左边的小于右边的值都删去,然后特判一下逆序的就可以直接删去后面的数。这种很大数据的,还有取余运算,因该是找规律。

2023-12-11 00:02:31 335

原创 第12周 学习总结

真的服,一道题环绕我好久,真无语。这里面最大的坑,有两个,一个是i从0开始所以我的函数应该是i*(i+1);而不是i*(i-1);真的无语,还有一个就是i的类型,因为i最大为200000,所以i*i可能会超出数据类型最大值,所以要设立long long型,这是最大的坑,又是数据类型的,踩了好多次了,哎,这题真是烦了好久!

2023-12-03 20:37:48 642

原创 第 11周C语言总结

这周尽量把书的内容全部看完,然后养成上传github的习惯,这周熟悉并配置好,还有鹏哥的规范写法,看一些重点吧!这里的算法相比于暴力法,虽然这里浪费了空间,但是让时间减少了许多,能避免超时;但是还没完全理解,尽量下周的时候早点理解。4.今天讲了二分法,和二分答案算法。这题理论上埃氏筛因该能过的。3.第一次做出结构体的题。

2023-11-27 00:38:30 340

原创 第10周总结

重复字符的输出题目:重复字符的输出这个题目有让人头疼的问题,他是输出重复的字符,和相应的下标。我最初做这道题是以为只要找出每个字符的下标就忽略了”重复“两字,所以花的时间特别久这个特别有代表性,很有趣,字符串的题往往是折磨的~~~~哈哈哈!!!

2023-11-19 23:25:43 32

原创 第9周总结

真的搞崩溃了,后面可以好好静下来看看,而且很多题就是走了很多冤枉路,所以要先搞好思路,注意好一些的思路,不要一来就打代码,结果打的是错的;分析:可以先把俩组数据先排序,然后再一一比较;从第一个高度不为0的苹果开始,如果有大于了就把陶陶往后移动一位;这里高度为0的苹果要留意先出去,后面剩下的苹果再加进来;题目解析:有两组数据,一组是摘桃高度,一组是桃的高度;(特别注意的是摘桃高度要大于桃的高度,不能取等。下周学些算法和最后一些书的内容,注意这段时间来最容易错的题;这里面的细节特别多,要特别注意;

2023-11-12 23:27:36 28

原创 补第8周总结

在这里偷了个懒,主要没有进行算每行的平均值,这里直接比较每行的总和;也可以再写一个求平均值的函数,进行调用,从而接题!方法:函数的引用,二维数组,数组函数;2.首先算出每行的总和再算出平均值;3.再运用交换行的函数进行交换;4.理清思路,注意细节;1.二维数组的行排序;

2023-11-06 21:31:27 29

原创 第7周总结

定义一个函数add(a,b)=a+b,请输出该函数的的值。输入 输入数据有多组。 首先输入n,接下来输入n组add(a,b);保证a

2023-10-29 23:49:45 28

空空如也

空空如也

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

TA关注的人

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