自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 多线程之龟兔赛跑

多线程之龟兔赛跑:开启两条线程,乌龟一个, 兔子一个,得出胜利者后线程停止可以将兔子的线程设置暂停一段时间再跑

2022-07-12 21:52:46 610 1

原创 HashMap和LinkedHashMap

LinkedHashMap:new LinkedHashMap<>(23,0.75f,true);//初始值,增长因子百分之多少扩容,访问顺序当访问顺序为true时,每访问一次元素,就把该元素放到最后面public class main { public static void main(String[] args) { HashMap<String, String> map = new LinkedHashMap<>(23,0.75f,tr

2022-06-26 19:29:15 189

原创 记录一下银行开卡操作

package tbw.Demo05;import tbw.Demo02.Person;import java.util.*;import java.util.ArrayList;import java.util.concurrent.CopyOnWriteArrayList;public class main { static Scanner input = new Scanner(System.in);//全局变量 static HashSet<People>

2022-06-26 19:15:55 100

原创 迭代器的使用

像list这种有序的集合里面,可以直接通过for循环的方式get(index)遍历得到每一个元素, 而set这种没有无序集合,则不能通过get(index)得到集合里边的元素,java就提供了迭代器,虽增强for循环也能对无序的集合进行遍历,但其内部亦是采用迭代器实现。迭代器提供一种对容器对象中的各个元素进行访问的方法,而又不需暴露该对象的内部细节。迭代器是一种模式,它可以使得对于序列类型的数据结构的遍历行为与被遍历的对象分离,即我们无需关心该序列的底层结构是什么样子的。只要拿到这个对象,使用迭代器就可以遍

2022-06-26 12:11:01 144

原创 ArrayList和LinkedList

ArrayList 类是一个可以动态修改的数组,与普通数组的区别就是它是没有固定大小的限制,我们可以添加或删除元素。ArrayList 继承了 AbstractList ,并实现了 List 接口。ArrayList 类提供了很多有用的方法,添加元素到 ArrayList 可以使用 add() 方法 。 添加并遍历元素如下 删除元素,可以使用remove() 方法计算大小可以使用size()方法System.out.println(list.size());//计算大小数组的排序:Collection

2022-06-26 11:26:46 196

原创 泛型类和泛型方法

泛型的核心目标:解决容器类型在编译时安全检查的问题package tbw.Demo05;public class Demo01{ String name; String a; Object b; public Demo01(String name, String a, Object b) { this.name = name; this.a = a; this.b = b; }}package tbw.

2022-06-20 23:30:55 95

原创 Java自学 快速排序

快速排序就是把下标为0的数取出来,让他先跟下标为array.length的数比较,如果下标为0的数比array.length大,则把array.length放到小标为0的坑位,然后让还是用取出来的数跟最左边的数比较,如果最左边的数比取出来的数大,则把最左边的数放到右边的位置填坑,简称拿第一数出来比较,大的放右边,小的放左边。最后左边的指针跟右边的指针重合后停止,让取出来的数放到重合的位置,把数组切割成两半,再用左边的一半和右边的一半分别跑一下上述方法,也就是递归的方法。代码实现:...

2022-06-17 00:16:01 31

原创 java自学:二分查找

当我们对数组比较小的时候可以用for循环去遍历找到想要的数的下标,但是当数组比较大的时候,比如一万个数的时候那么for循环就很慢。所以当数组是有序排列的时候,我们可以使用二分查找算法去拿到想要的数的下标二分查找就是每次都去找中间的数,发现比想要找的数大,则砍掉一半从右边一半开始找,发现比想要找的数小,同理砍掉一半从左边找,如果刚好==想要找的数,则返回这个数的下标;这个代码的核心思想就是定义数组最左边下标和最右边下标来确定查找范围,然后定义一个中间的数=(左边+右边+1)/2,这里加一是用来区分数组长度是奇

2022-06-16 21:23:18 48

原创 封装、继承和多态

封装:将数据和操作数据的方法进行有机结合,隐藏对象的属性和实现细节,仅对外公开接口来和对象进行交互.面向对象程序三大特性:封装,继承,多态属性被私有化,外部没有办法调用,而在这样的情况下,我们在不想改变私有属性的情况下,想让外部依然调用就需要使用get,set方法可以idea可以使用Alt+Inset快捷键使用get,set方法,这样外部就可以使用了继承:继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。继承的作用:通过继承可以快

2022-06-15 00:01:02 96

原创 String和StringBuilder

对于字符串的比较建议使用equals来比较虽然使用==号也可以,但==是编译器比较智能的把字符串加到一起了但是对于实例化对象,用equals就要重写方法了;不然比较的只是地址这里s1.equals(s2)只是比较对象s1和s2的地址是否相同;所以比较重写equals方法而字符串拼接可以使用StringBuilder来拼接可以先创建StringBuilder对象再使用append来实现...

2022-06-13 21:52:22 36

原创 代码块和静态代码块

{里面的内容就是代码块}代码块执行于构造方法之前静态代码块 就是在代码块之前加上static修饰,类加载起来的时候静态代码块就加载出来了

2022-06-13 20:56:03 110

原创 静态变量和静态方法

静态变量和静态方法是类具有的属性,相当于是所有对象的共享内容,我们可以用static声明一个成员变量和成员方法,一旦被声明静态,那么通过这个类创建出来的所有对象,操作的都是同一个目标,也就是说哪怕对象再多,也只有这一个静态变量和静态方法,如果静态变量被一个对象改变,那么其他对象读取的都是被改变后的值;public static void main(String[] args) { Student s1 = new Student(); s1.a=10;

2022-06-13 00:57:02 856

原创 方法的重载

重载就是在⼀个类中,有相同的函数名称,单形参不同的函数。public class Student { int sum(int i){ System.out.println("调用了int类型"); return i; } double sum(double i){ System.out.println("调用了double类型"); return i; } short sum(s

2022-06-12 21:38:08 39

原创 有时候使用类需要new,可有时候使用类只需要=,并不需要new,那么什么时候需要new?什么时候可以直接=

通常情况下都是需要new一下的,调用类的静态方法的时候(就是方法用static标记的),可以不用new,直接调用,引用下楼。关于new一下的意思申明一个内存空间存储对象,如果不new一下的话却想要实例化,那就必须利用反射机制或者克隆对象也可以实现的可以按住Ctrl点击方法进去看源码,看是否用static修饰......

2022-06-09 23:57:18 1625

原创 自学之路—青蛙跳台阶

//青蛙跳台阶,一共有n个台阶,青蛙每次只能跳一阶或两阶,请问当n=10的时候有多少中跳法;可以用动态规划的思想当n=1时,有1种跳法当n=2时有2种跳法当n=3时有1+2=3种跳法当n=4时有2+3=5种跳法以此类推。。。。。。代码实现:public static void main(String[] args) { int n=10; int[] a=new int[n]; a[0]=1; a[1]=2; for (int i = 2; i <n ;

2022-06-09 23:30:44 42

原创 自学java之路:打印九九乘法表

学过打印三角形后再编写九九乘法表其实就不难,知道内部for打印的是什么,外部for循环控制的是什么for (int i = 1; i < 10; i++) { for (int j = 1; j < i+1; j++) { System.out.print("*"); } System.out.println();运行结果*********************************************内部

2022-06-09 23:01:50 1287

原创 计算机中的二进制表示

在我们的生活中,我们是以十进制表示的,十进制就是以10为进位,比如9+1=10;在计算机中所有的内容都是用二进制表示的,比如1+1=10,3=11 4=100 5=101 6=110 ;因为我们的计算机都是电频信号,电频信号只有高频和底频,也可以理解为通电和不通电,高频用1表示,低频用0表示,由于只有1和0;所以只能用二进制表示我们的数字!十进制中的7用二进制表示111=2^2+2^1+2^0现在又4个bit位,最大能表示多大的数字呢? 十进制中是9999 ,二进制是1111,二进制最小为0000在java

2022-06-09 21:57:41 651

原创 变量,常量,注释和关键字

Q:什么是变量?A:可以改变的量package tbw.Demo01;public class Demo01 { public static void main(String[] args) {//数据类型 【标识符】变量名 =初始值 int i = 1; System.out.println(i); }注意标识符【变量名】以大小写字母,下划线—,美元符$组成,不能以数字开头//大小写敏感不能有空格,+ - * % /#@!^ 等特

2022-06-09 21:16:12 66 1

空空如也

空空如也

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

TA关注的人

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