JAVA
javase基础语法
菜鸡也有大佬梦
这个作者很懒,什么都没留下…
展开
-
获取字符串子集个数两种方式
【代码】获取字符串子集个数两种方式。原创 2022-11-21 17:45:42 · 236 阅读 · 1 评论 -
如何判断比较器的升序和降序
Comparator中的compare方法//升序排序public int compare(int o1, int o2) { return o1 - o2;}//降序排序public int compare(int o1, int o2) { return o2 - o1;;}Comparable中的compareTo方法//自己实现的比较器,重写compareTo方法,自定义比较规则//升序排序@Overridepublic int compareTo(Test o) {原创 2021-01-26 22:43:44 · 693 阅读 · 0 评论 -
如何将日期时间格式12小时制转换为24小时制
话不多说,上代码public class Main { public static void main(String[] args) { Date date = new Date(); //日期时间格式转换成12小时制 SimpleDateFormat dateFormat12 = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); System.out.println(dat原创 2021-01-26 19:25:08 · 2249 阅读 · 1 评论 -
Comparable VS Comparator
一.概述Java 中的排序是由 Comparable 和 Comparator 这两个接口来实现的。Comparable表示可被排序的,实现该接口的类的对象自动拥有排序功能,属于内部顺序,但需要手动实现接口,侵入性比较强。Comparator则表示一个比较器,一般情况, 这个比较器将作为一个参数进行传递。对待比较累的侵入性弱,但对算法代码实现侵入性强。二.Comparable(自然排序)源码如下:public interface Comparable<T> { public原创 2021-01-07 23:05:20 · 283 阅读 · 0 评论 -
必会使用工具类--Collections类Arrays类
一.定义1.Collection在java.util下的一个接口,它是各种集合结构的父接口。继承与他的接口主要有Set ,Queue和List.2.工具类Collectionsjava.util下的一个专用静态类,它里面包含各种有关集合操作的静态方法。 提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。3.ArrayJava中最基本的一个存储结构。 提供了动态创建和访问 Java 数组的方法。 该类包含用于操作数组的各种方法(如排序和搜索)。它无法判断其中实际存有多少元素,leng原创 2021-01-01 23:16:08 · 334 阅读 · 0 评论 -
Serializable接口的作用
一.什么是Serializable接口它是一个对象序列化的接口,一个类只有实现了Serializable接口,它的对象才可以被序列化。不实现此接口的类的任何字段(属性)都不能序列化和反序列化。二.什么是序列化序列化是将对象状态转换为可保持或传输的格式的过程。与序列化相对的是反序列化,它将流又转换为对象。这两个过程结合起来,可以轻松的存储和传输数据1.序列化(场景):以上面提到的Person类为例。这个类中的两个字段name和age在程序运行后都在堆内存中,程序执行完毕后内存得到释放,name和ag原创 2020-12-31 09:21:47 · 2240 阅读 · 0 评论 -
快速掌握IO流
前言:Java 的 I/O 大概可以分成以下几类进行学习:磁盘操作:File字节操作:InputStream 和 OutputStream字符操作:Reader 和 Writer对象操作:Serializable网络操作:Socket一.IO流的基本概念IO:Java对数据的操作是通过流的方式,IO流用来处理设备之间的数据传输,上传文件和下载文件,Java用于操作流的对象都在IO包中。二.IO流的三种分类方式1.按流的方向分为:输入流和输出流输入流: 只能从中读取数据,而不能向其原创 2020-12-31 08:59:03 · 305 阅读 · 0 评论 -
为什么要重写hashCode()方法
一.引言首先 hashCode() 方法被设计在 Object 类中,说明是希望所有的对象都能实现该方法,该方法是会返回一个对应于当前对象的一个整数,之所以所有对象都实现该方法是为了将来对象在查找时变得快捷。Java中的集合类 hashMap、hashSet 底层的实现都是哈希表,之所以采用哈希表,是因为他能克服链表和二叉树等数据结构在查询上的低效率问题,哈希表的存储就是根据对象的哈希值,以此确定他的存储位置。但是,仅仅通过 hashcode() 并不能将所有对象区分开来,有可能会出现对象不同,ha原创 2020-12-29 22:46:20 · 5571 阅读 · 3 评论 -
在一行中输出能够组成的最小的数
仔细读题,审题很重要 ,真的很重要。下面分享一道题:给定数字0-9各若干个。你可以以任意顺序排列这些数字,但必须全部使用。 目标是使得最后得到的数尽可能小(注意0不能做首位)。例如:给定两个0,两个1,三个5,一个8,我们得到的最小的数就是10015558。现给定数字,请编写程序输出能够组成的最小的数。输入描述:每个输入包含1个测试用例。每个测试用例在一行中给出10个非负整数, 顺序表示我们拥有数字0、数字1、……数字9的个数。整数间用一个空 格分隔。10个数字的总个数不超过50,且原创 2020-12-08 10:41:02 · 984 阅读 · 1 评论 -
(JAVA实现)平衡二叉树的判断
判断一棵二叉树是否为平衡二叉树:实现一个函数,检查二叉树是否平衡,平衡二叉树的定义如下,对于树中的任意 一个结点,其两颗子树的高度差不超过1。给定指向树根结点的指针TreeNode* root,请返回一个bool,代表这棵树是否平衡。import java.util.*; class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int va原创 2020-12-05 23:04:44 · 1016 阅读 · 1 评论 -
JAVA异常中的坑--trytry-catch-finally的执行顺序
结论:不管有没有出现异常,finally代码块都会执行;不管try和catch的代码块中有return时,finally仍会执行,且如果finally代码块也有return,则此代码肯定会返回finally执行的return值。如下分有return和没有return来讨论try-catch-finally执行顺序的情况:1.无return时:上代码: try { t1(); t2(); } catch (Exception e) { c(); }原创 2020-12-03 13:51:03 · 764 阅读 · 2 评论 -
JAVA八大基本数据类型之间转换遵循的规则
java八大基本数据类型在类型转换时,遵循以下规则:八种基本数据类型中,除了boolean类型不能转换,剩下其中类型之间都可以进行转换;如果整数型字面量没有超出byte,short,char的取值范围,可以直接将其赋值给byte,short,char类型的变量小容量向大容量转换称为自动类型转换,容量从小到大的排序为:byte<short(char)<int<long<float<double,其中short和char都占用两个字节,但是char可以表示更大的正整数;原创 2020-12-03 13:00:30 · 878 阅读 · 1 评论 -
JAVA中八大基本数据类型之Byte类型
先引入一个段代码public class Main { public static void main(String[] args) { byte b1 = 1,b2=2,b3,b6; final byte b4=4,b5=6; b6 = b4+b5; System.out.println(b1+b2);//3 System.out.println(b6);//10 b3=(b1+b2);原创 2020-12-03 11:55:18 · 1247 阅读 · 1 评论 -
JAVA----认识String类
java--初识String类原创 2020-11-09 23:27:54 · 589 阅读 · 1 评论 -
(JAVA)快速掌握静态代码块,非静态代码块,构造方法的执行顺序及次数
静态代码块,非静态代码块,构造方法原创 2020-11-06 20:51:08 · 729 阅读 · 1 评论 -
JAVA为什么不支持多继承但可以利用接口多实现呢
java为什么不支持多继承:1.若子类继承的父类中拥有相同的成员变量,子类在引用该变量时将无法判别使用哪个父类的成员变量。2.若一个子类继承的多个父类拥有相同方法,同时子类并未重写该方法(若重写,则直接使用子类中重写的方法),那么调用该方法时,将无法确定调用哪个父类的方法。假设A类和B类都有 t 方法,但具体实现细节不一样。C类则继承A类和B类,当C类调用 t 方法时,会出现歧义。因为,A类和B类都有 t 方法,但具体的实现缺不一样,那么该调用哪个方法呢?java为什么可以多实现:可以多实现是原创 2020-11-06 20:27:44 · 1517 阅读 · 1 评论 -
快速了解JAVA异常
JAVA异常原创 2020-11-01 21:00:12 · 515 阅读 · 2 评论 -
(Java) -- this关键字和super关键字的区别
Java当中this和super的区别:1.属性的区别:this访问本类中的属性,如果本类没有这个属性则访问父类中的属性。super访问父类中的属性。2.方法的区别:this访问本类中的方法,如果本类没有这个方法则访问父类中的方法。super访问父类中的方法。3.构造的区别:this调用本类构造构造,必须放在构造方法的首行。super调用父类构造,必须放在子类构造方法首行。其他区别:this表示当前对象。super不能表示当前对象变量和super.变量this.原创 2020-10-24 13:41:50 · 627 阅读 · 1 评论 -
快速理解java中类和对象的概念
类和对象原创 2020-10-21 19:54:30 · 680 阅读 · 1 评论 -
(java基础篇)java中的方法重载(overload)和方法重写(override)的区别是什么?
**方法重载(overload):**1.被重载的方法必须改变参数列表(参数个数或类型或顺序不一样)2.被重载的方法可以改变返回类型3.被重载的方法可以改变访问修饰符4.被重载的方法可以声明新的或更广的必检异常5.方法能够在同一个类中或者在一个子类中被重载6.无法以返回值类型作为重载函数的区分标准**方法重写(override):**1.参数列表必须完全与被重写方法相同2.返回类型必须完全与被重写方法的返回类型相同3.访问权限不能比被重写的方法的访问权限更低。例如:如果父类的一原创 2020-10-21 19:24:03 · 621 阅读 · 1 评论 -
(java入门篇)给定一个十进制整数,如何转换成二进制形式和十六进制形式?
进制转换原创 2020-10-10 21:22:34 · 802 阅读 · 1 评论 -
(java基础)变量和运算符的基本知识点
(java)变量和运算符的基本知识点原创 2020-10-10 21:12:28 · 574 阅读 · 1 评论