丶嘟嘟
码龄4年
关注
提问 私信
  • 博客:15,892
    15,892
    总访问量
  • 45
    原创
  • 654,718
    排名
  • 6
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2020-09-26
博客简介:

qq_51149294的博客

查看详细资料
个人成就
  • 获得17次点赞
  • 内容获得20次评论
  • 获得23次收藏
  • 代码片获得163次分享
创作历程
  • 45篇
    2023年
成就勋章
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

348人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

复习集合Collection、自定义数组、链表源码分析和实现

代表:ArrayList和Vector以ArrayList为例。为了让大家印象更深刻一些,我们模仿ArrayList写一写一小部分源码,来理解它底层的原理。//实际存储对象的数组,初始长度为4//代表实际元素的个数,size <= elementData.length//编写add//判断是否需要扩容size++;//编写add(int index,E e)throw new ArrayIndexOutOfBoundsException("输入有误,数组下标越界异常");
原创
发布博客 2023.09.18 ·
239 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

集合与泛型

泛型:泛指某个类型,代码中看到、、等都是和泛型有关的。【修饰符】 class 类名<泛型字母列表>{【修饰符】 interface 接口名<泛型字母列表>{<泛型字母列表>,可以是1个也可以是多个字母。<泛型字母列表>,不推荐用单词,建议使用单个的大写字母为什么不用单词?容易引起误会需求:声明一个泛型类Coordinate坐标,坐标类中应该包含两个属性,分别是x和y,代表经度和维度值。这里的x和y的类型不确定,可能是Integer,Double,String等。/*
原创
发布博客 2023.09.17 ·
280 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

多线程回顾、集合Collection、Set、List等基本知识

问: 多线程的两种创建方式?问:多线程通常会遇到线程安全问题?什么情况下会遇到线程安全问题?答:一个数据被多个线程访问(有读有写)解决这个问题的方式?SE:同步锁 synchronizedA : 同步代码块B : 同步方法同步锁的要求A : 这多个线程必须使用同一个锁对象B : 同步锁的类型没有要求同步方法的锁对象是谁?A : 非静态方法 : thisB : 静态方法 : 当前类名.class加同步锁的代码范围?单词的原子性的任务代码原子性 : 不可拆分,最小单位。
原创
发布博客 2023.09.15 ·
767 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

线程中的方法补充、线程案例、线程池、Callable、定时器、正则表达式

1.概述:是一个接口,需要new实现类对象2.实现类:ReentrantLock3.方法:lock()获取锁unlock()释放锁//首先获取lock对象@Overridetry {//获取锁System.out.println(Thread.currentThread().getName()+"抢到了第"+ticket+"张票");ticket--;}finally {//释放锁Thread t1 = new Thread(ticket,"张三");
原创
发布博客 2023.09.14 ·
179 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

包装类、多线程的基本使用

1.概述:Integer是int的包装类2.构造:aInteger(String i):i必须是数字格式b//输出Boolean包装类中 , 底层调用了parseBoolean(String s) , 在parseBoolean中调用了equals.IgnoreCase(s) , 忽略了大小写在CPU和内存之间专门为main开辟的通道叫做主线程主线程专门运行main方法的​ 指的是两个或者两个以上的线程在执行的过程中,由于竞争同步锁而产生的一种阻塞现象;
原创
发布博客 2023.09.12 ·
392 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

Math类、BigInteger、BigDecimal、Date、Calendar、SimpleDateFormat、LocalDate、Period、Duration、System以及Arrays类

1.将来我们会遇到非常大的整数,大到比long的值还有大,我们将这类数据称之为"对象"2.作用:BigInteger用于处理超大整数3.构造方法:4.方法:BigInteger add(BigInteger val) 返回其值为 (this + val) 的 BigIntegerBigInteger subtract(BigInteger val) 返回其值为 (this - val) 的 BigInteger。
原创
发布博客 2023.09.11 ·
74 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

String类、String常用API、StringBuilder

概述: String类代表字符串特点:Java程序中的所有字符串字面值(如 “abc”) 都作为此类的实例(对象)实现"abc" 就是对象 , String是对象的类型 , s是对象名凡是带双引号的 , 都是String的对象字符串是常量 , 它们的值在创建后不可更改s += "de";- > 产生了新对象String对象是不可变的 , 所以可以共享//true1.概述:一个可变的字符序列。此类提供一个与 StringBuffer 兼容的 API,但不保证同步(线程不安全,效率高)
原创
发布博客 2023.09.10 ·
77 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

深入浅出StringBuilder添加时如何自动扩容

​ 一个可变的字符序列。此类提供一个与 StringBuffer 兼容的 API,但不保证同步(线程不安全,效率高)
原创
发布博客 2023.09.10 ·
278 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

Java异常finally、Object、经典接口

需求:键盘录入一个用户名,实现登录功能,如果登录失败,抛出LoginUserException/*此时super将message传给父类Exception然后Exception再将message传给父类ThrowableThrowable收到String,先停止程序,随后打印错误信息*/ //fillInStackTrace()是Java的一个方法,它用于获取和填充在异常发生时的方法调用栈信 息。这个方法通常在抛出异常时由Java虚拟机自动调用,并将获得的栈跟踪信息填充到异常对象中。
原创
发布博客 2023.09.08 ·
109 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java局部内部类、匿名内部类、异常以及处理异常

System.out.println("心脏在跳");//在方法内调用局部内部类的方法,最终调用eat()来间接调用jump()方法per.eat();代码调试的手速①概述:代码出现了不正常的现象 , 在Java中 , 异常都是一个一个的类②分类 : Throwable类​ Error : 错误 - > 代码出现了重大错误 , 相当于人得了癌症​ Exception : 异常 -> 代码出现了小问题 , 相当于人得了感冒。
原创
发布博客 2023.09.06 ·
132 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java接口、多态

public interface 接口名 {public abstract 返回值类型 方法名(参数);public default 返回值类型 方法名(形参){方法体return 结果public static 返回值类型 方法名(参数){方法体return 结果前提:必须有子父类继承关系或接口实现关系必须有方法的重写(没有重写 , 多态没有任何意义) , 多态主要是玩重写方法的new 对象 : 父类引用指向子类对象多态弊端:不能直接调用子类特有的功能。
原创
发布博客 2023.09.05 ·
192 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

Java的方法重写、super、this、abstract

​ 子类中有一个和父类方法名以及参数一模一样的方法​ 当将共性方法抽取出来时 , 发现不同的子类针对次方法的实现细节不同 , 此时抽取出来的方法体无法直接在父类中确定 , 此时抽取出来的方法体无法直接在父类中确定 , 就可以定义为抽象方法​ 1.抽象方法所在的类一定是抽象类​ 2.关键字:abstract​ a. 修饰符 abstract 返回值类型 方法名(参数);--------抽象方法。
原创
发布博客 2023.09.05 ·
219 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java中递归、数组反转、二分查找、冒泡排序

间接递归:在方法A()中调用方法B(),在方法B()中调用方法C(),在方法C()中调用方法A();排序,都要进行数组 元素大小的比较,再进行位置的交换。冒泡排序法是采用数组中相邻元素进行比较换位。递归方法调用:方法自己调用自己的现象就称为递归。递归的分类*直接递归 间接递归。实现思想:数组对称的位置元素互换。直接递归:方法自身调用自己。
原创
发布博客 2023.09.02 ·
125 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

java数组

数组属于引用数据类型。
原创
发布博客 2023.08.26 ·
52 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java-嵌套循环(或多重循环)

*练习1:**将一天中的时间打印到控制台。**案例3:**打印5行倒直角三角形。**案例2:**打印5行直角三角形。
原创
发布博客 2023.07.19 ·
431 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

Java-无限循环

*案例2:**从键盘读入个数不确定的整数,并判断读入的正数和负数的个数,输入为0时结束程序。**案例1:**实现爱你到永远…思考:如下代码执行效果。
原创
发布博客 2023.07.19 ·
1429 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Java-do-while循环

如果小了,提示小了;如果对了,就不再猜了,并统计一共猜了多少次。**案例1:**遍历1-100的偶数,并计算所有偶数的和、偶数的个数(累加的思想)**练习1:**随机生成一个100以内的数,猜这个随机数是多少?如果循环体语句块至少执行一次,可以考虑使用do-while循环。**执行过程:**①-③-④-②-③-④-②-③-④-…**案例2:**体会do-while至少会执行一次循环体。遍历没有明显的循环次数(范围)的需求,选择while循环。遍历有明显的循环次数(范围)的需求下,选择for循环。
原创
发布博客 2023.07.19 ·
177 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Java-while循环

*案例2:**遍历1-100的偶数,并计算所有偶数的和、偶数的个数(累加的思想)**练习:**从键盘输入整数,输入0结束,统计输入的正数、负数的个数。**执行过程:**①-②-③-④-②-③-④-②-③-④-…**案例1:**输出5行HelloWorld!**案例3:**猜数字游戏。
原创
发布博客 2023.07.19 ·
206 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Java循环语句for循环以及练习

编写程序从1循环到150,并在每行打印一个值,另外在每个3的倍数行上打印出“foo”,在每个5的倍数行上打印“biz”,在每个7的倍数行上打印输出“baz”。//注意:此处不能使用if-else,因为有的数字同时会满足多个情况,而if-else是多选一的情况,如果使用if-else会漏选。**练习2:**打印1~100之间所有是7的倍数的整数的个数及总和(体会设置计数器的思想)题目:遍历1-100以内的偶数,并获取偶数的个数,获取所有的偶数的和。**执行过程:**①-②-③-④-②-③-④-②-③-④-…
原创
发布博客 2023.07.18 ·
412 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

Java中switch-case选择结构

在switch语句中,如果case的后面不写break,将出现穿透现象,也就是一旦匹配成功,不会再判断下一个case的值,直接向后运行,直到遇到break或者整个switch语句结束,执行终止。随机产生3个1-6的整数,如果三个数相等,那么称为“豹子”,如果三个数之和大于9,称为“大”,如果三个数之和小于等于9,称为“小”,用户从键盘输入押的是“豹子”、“大”、“小”,并判断是否猜对了。开发经验:如果既可以使用switch-case,又可以使用if-else,建议使用switch-case。
原创
发布博客 2023.07.18 ·
691 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多