java学习之路
埋头苦干小唐同学
这个作者很懒,什么都没留下…
展开
-
二分查找算法
题目描述请实现有重复数字的有序数组的二分查找。输出在数组中第一个大于等于查找值的位置,如果数组中不存在这样的数,则输出数组长度加一。初步代码一开始我没有认真看这个题,就用之前记忆中的二分查找去做了,代码如下:import java.util.*;public class Solution { /** * 二分查找 * @param n int整型 数组长度 * @param v int整型 查找值 * @param a int整型一维数组 有原创 2020-09-26 00:43:49 · 1579 阅读 · 0 评论 -
LRU算法实现
题目描述题目描述设计LRU缓存结构,该结构在构造时确定大小,假设大小为K,并有如下两个功能set(key, value):将记录(key, value)插入该结构get(key):返回key对应的value值[要求]set和get方法的时间复杂度为O(1)某个key的set或get操作一旦发生,认为这个key的记录成了最常使用的。当缓存的大小超过K时,移除最不经常使用的记录,即set或get最久远的。若opt=1,接下来两个整数x, y,表示set(x, y)若opt=2,接下来原创 2020-09-19 16:21:04 · 366 阅读 · 0 评论 -
java中的引用类型
Java中的引用类型首先java中的引用类型有如下几种:强引用,软引用,弱引用,虚引用。接下来会结合代码尝试着对这几种引用类型做下讲解。测试四种引用类型首先,我们创建了这样一个类:public class Test1 { @Override protected void finalize()throws Throwable{ System.out.println("finalize发生 "); }}重写了finalize方法 这样在Test1垃圾回收时原创 2020-09-13 21:19:39 · 195 阅读 · 0 评论 -
剑指 Offer 06. 从尾到头打印链表
题目描述输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。值得注意的是我们接收的参数是链表的第一个节点,我们也可以看到链表的定义。/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution { publi原创 2020-09-04 23:46:52 · 123 阅读 · 0 评论 -
剑指offer面试题01
简介做一下面试的准备,开始搞一下算法题,把剑指offer的题都搞一下题目1.数组中重复的数字 offer.03找出数组中重复的数字题目描述:在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。我的想法我自己是这样想的,利用set中的值只能存在一个,再次添加时返回false的特性,找到重复的数字,代码如下:class Solution { pub原创 2020-08-07 21:23:37 · 217 阅读 · 0 评论 -
spring基础部分知识点回顾
简介最近学习了很多框架的知识,spring,springmvc,mybatis等等,这些框架让我感受到便利的同时也让我感受到了需要记忆了解的内容的量很大,很快的接触很多框架有点应接不暇,所以想总结一下框架的使用要点知识点回顾1.通过IOC实现对对象的管控1.1 IOC使用步骤1.引入jar包,通过maven引入对应依赖实现。IOC实现需要的包的groupId都是org.springframework具体需要的包的artifactId如下所示:spring-core(Spring的核心工具包原创 2020-08-02 18:44:34 · 318 阅读 · 0 评论 -
学习框架时遇到的一些问题
1.使用cmd窗口运行时失败如上图所示,按照教程运行maven之后报错,大概意思是我应该使用6或者更高的java版本,但是实际上我使用的是java11,我一开始的pom.xml是这样的:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.原创 2020-07-24 23:23:37 · 217 阅读 · 0 评论 -
完成jsp,servlet项目的一点心得
关于项目做的项目是一个简单的教务系统,分配给我的任务主要是集中在菜单管理,权限管理,以及角色管理,这篇博客记录一下一些关于做项目的心得1.拿到项目先思考些什么首先我们都了解,这一种项目都是基于mvc设计模式的:操作的界面是在前端网页中间需要完成的功能由java连接起来显示的数据来自数据库它的核心其实是为了让用户能够按照需求、按照我们的想法去操作、看到数据库的数据,并且还要让用户有比较好的操作体验。所以首先想的是我们需要什么样的数据库数据,先把表建好,各个表的主键是什么,表与表的关系是什么原创 2020-07-17 17:57:29 · 1548 阅读 · 0 评论 -
jsp、servlet项目部分错误总结
在最近的写项目过程中遇到了很多问题,这里来整理一下PropertyNotFoundException: 类型XXX上找不到属性XXX的解决方案之前遇到了这样的问题,它的报错提示是这样的:javax.el.PropertyNotFoundException: 类型[java.lang.String]上找不到属性[menuid2]在网上搜到了很多问题解答的方案:检查java类中属性名有没打错。在页面用el表示时,应该将第一个字母改为小写。检查自己的代码写的是否规范命名冲突这些只适用于下图原创 2020-07-11 11:17:44 · 434 阅读 · 0 评论 -
Javaweb mvc设计模式与三层架构
MVC设计模式与三层架构什么是Web MVC设计模式?mvc指的是m(model 模型) v(view 视图) c(controller 控制器)三个模块组成的代码项目。它规定了一种Javaweb的编程规范。在Web MVC模式下,模型无法主动推数据给视图,如果用户想要视图更新,需要再发送一次请求(即请求-响应模 型)。M(Model) 模型 : 应用程序的核心功能,管理这个模块中用的数据和值(bean,dao);V(View )视图: 视图提供模型的展示,管理模型如何显示给用户,它是应用程序原创 2020-07-04 15:45:09 · 1994 阅读 · 0 评论 -
Java集合部分面试题解答
Java集合面试题1.Collection和Collections的区别Collection是集合类的上级接口,继承与他有关的接口主要有List和SetCollections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全等操作2.Comparable 和 Comparator 接口是干什么的?列出它们的区别Comparable 是排序接口。若一个类实现了Comparable接口,就意味着“该类支持排序”。 即然实现Comparable接口的类支持排序,假设现原创 2020-06-27 18:36:54 · 293 阅读 · 0 评论 -
Java JSON解析简单教程
JSON解析针对JSON解析的问题,我们使用两种解析方式,一种是谷歌开发的Gson,一种是阿里开发的Fastson。并且一般我们使用过程,就是把对象转换成JSON格式 或者 JSON格式的字符串转换为Java的对象Gson将对象转换为JSON字符串在我们引入jar包之后只需要用以下代码就能转换了:String json = new Gson().toJSON(要转换的对象);示例: Book book = new Book("100","金苹果","种苹果之路");原创 2020-06-22 22:07:24 · 257 阅读 · 0 评论 -
Java Stream简介
目录关于Stream方法介绍filter关于Stream在不久前的一次博客中,谈到了Stream,对这个产生了一些疑问,于是想通过了解它的方法使用来了解一下这个接口。方法介绍filter原创 2020-06-13 23:16:54 · 347 阅读 · 0 评论 -
Java Date DateFormat的一些方法介绍
目录简介DateDate的构造方法after 测试此日期是否在指定日期之后before 测试此日期是否在指定日期之前clone 返回此对象的副本compareTo 比较两个日期equals 比较两个date类型数据是否相等from 从Instant对象获得Date的实例Instant类getTmie 自1970年1月1日00:00:00 GMT以来的毫秒数setTime 将date对象根据long类型值设置时间hashCode与toStringDateFormatSimpleDateFormat构造方法简原创 2020-06-05 14:56:10 · 1789 阅读 · 0 评论 -
Java BigDecimal的方法介绍
目录BigDecimal的方法介绍BigDecimal的方法介绍本文使用的是jdk11的版本原创 2020-05-31 17:04:58 · 2235 阅读 · 1 评论 -
Java BigDecimal的构造方法介绍
目录本文采用的是jdk11版本的java。原创 2020-05-24 16:11:42 · 2405 阅读 · 0 评论 -
java Arrays方法使用介绍
Arrays方法介绍sort形式参数要求结果代码例子parallelSort形式参数要求结果与sort的区别代码例子本文中的方法采用的是jdk11的版本sort形式参数要求输入一个数组(可以是int,short,long,byte,float,double,char类型的数组)输入一个数组,并且输入要排序的下标范围,其中左下标进入排序右下标不进入排序。结果作为形式参数输入的数组(或者数组的某一部分)将升序排序代码例子public static void main(String[] ar原创 2020-05-17 16:16:45 · 689 阅读 · 0 评论 -
Thread的几种常用方法
对Thread类中的常用方法进行整理currentThread()返回对当前正在执行的线程对象的引用 public static void main(String[] args) { System.out.println(Thread.currentThread().getName()); }代码会返回mainyield提示调度程序,当前线程愿意放弃当前对处理器的使用。调度程序可以忽略这个提示。sleep导致当前正在执行的线程休眠(暂时停止执行)指定的毫秒数,具原创 2020-05-14 20:55:34 · 5714 阅读 · 0 评论 -
java 实现线程安全的3种方式
目录java实现线程安全的3种方式什么时候使用同步1.同步代码块2.同步方法3.显示锁Locksynchronized与显示Lock的对比java实现线程安全的3种方式什么时候使用同步运用在书里面看到的一种说法:如果你正在写一个变量,它可能接下来将被另一个线程读取,或者正在读取一个上一次已经被另一个线程写过的变量,那么你必须使用同步,并且,读写线程都必须用相同的监视器锁同步。在我们的代码中常常会出现临界资源,如果在类中有超过一个方法在处理临界数据,那么你必须同步所有相关的方法。如果只同步一个方法,那原创 2020-05-14 17:53:42 · 1392 阅读 · 0 评论 -
arrays中的方法sort以及源码
Arrays中的方法sort介绍本文根据JDK11的api工具以及java中的源码介绍排序sort声明方式:public static void sort(int[] a)public static void sort(int[] a, int fromIndex, int toIndex)public static void sort(long[] a)public static void sort(long[] a, int fromIndex, int toIndex)publ原创 2020-05-10 20:04:31 · 586 阅读 · 0 评论 -
java awt简介
java图形化用户界面awt简介java的图形化用户界面最初的设计目标是帮助程序员编写在所有平台上都能使用的GUI程序,但是它还是没有竞争过其他的程序。在java 1.0时就推出了抽象窗口工具包(Abstract Window ToolKit,AWT)。这个工具在所有限制过多,表现得不是很好,按其中以为员工的说法是,这是一个月完成的作品,所以有些瑕疵,但是也足够让人惊讶他们的速度了,另一方面也说...原创 2020-05-06 19:13:23 · 1096 阅读 · 0 评论 -
用java实现五子棋小游戏
关于使用java实现控制台版五子棋游戏的代码与想法实现控制台版五子棋游戏思路过程及代码一些遇到的问题以及想法实现控制台版五子棋游戏思路过程及代码编程实现 控制台版 并支持两人对战的五子棋游戏五子棋这个游戏相比大家都非常的熟悉,通过让自己的棋子连成5点一线来获得胜利。我们想一想整个过程可以发现以下几点:游戏的进程是两个人轮番行动,直到一个人完成胜利条件为止,我们并不清楚会进行多少次循环...原创 2020-04-19 12:53:48 · 1211 阅读 · 0 评论