
随手录
Riven-007
柳暗花明又一村
展开
-
正则表达式
正则表达式Test01package _11正则表达式_演示;/*普通方式校验字符串: 判断用户输入的身份证号码是否合法。 规则为:号码为18位,不能以数字0开头,前17位只可以是数字,最后一位可以是数字或者大写字母X。 */public class RegexTest1 { public static boolean checkId(String id){ //号码为18位.如果不是18位,返回false if(id.length(原创 2022-05-03 20:52:40 · 389 阅读 · 0 评论 -
日期相关(类与方法)
Date类 目标:掌握Date类的基本使用 1.Date类的作用: java.util.Date 代表一个精确的时间,精确到毫秒。 2.构造方法 Date() Date(long date) : 使用毫秒数创建Date对象(在1970年1月1日 00:00:00 基础上加上指定毫秒数) 3.常用方法 long getTime() :获取当前时间的毫秒值 void setTime(long原创 2022-05-03 20:50:17 · 379 阅读 · 0 评论 -
包装类和自动拆箱与自动装箱
包装类/* 目标:学习包装类的应用 包装类的应用: 1.包装类作为泛型。 2.基本类型转字符串。 3.字符串转基本类型。(重点) */public class Demo1 { public static void main(String[] args) { //1.包装类作为泛型。 ArrayList<Integer> list = new ArrayList<Integer原创 2022-05-03 20:43:53 · 299 阅读 · 0 评论 -
常用API
Math类目标:掌握Math类的基本使用 Math类介绍: Math是数学工具类,包含执行基本数字运算的各种方法。 Math类常用方法: public static int abs(int a) : 返回绝对值 public static double ceil(double a) : 向上取整(天花板) public static double floor(double a) : 向下取整(地板) pu原创 2022-05-03 20:42:09 · 230 阅读 · 0 评论 -
多态的详解
多态的前提/* 多态是同一个行为具有多种不同表现形式。 多态的前提: 1.继承/实现关系 2.有方法重写 3.父类引用指向子类对象(接口指向实现类对象) */public class Test { public static void main(String[] args) { //父类引用指向子类对象 Printer p1 = new ColorPrinter(); p1.prin原创 2022-05-02 20:23:11 · 272 阅读 · 0 评论 -
接口的基础知识
定义和使用JDK7及之前,接口中包含的结构 常量 :默认是public static final修饰的,可以省略 抽象方法:默认是public abstract 修饰的,可以省略JDK8开始,接口中可以定义非抽象方法public interface USB { /* public 公开的 static 静态的,可以使用接口名访问 final 最终的,不能再次修改变量值 */ //变量名通常都是全大写的原创 2022-05-01 19:19:56 · 105 阅读 · 0 评论 -
各种修饰符
一、类修饰符1.访问修饰符:公共类修饰符public2.非访问控制符:抽象类修饰符 abstract 、最终类修饰符 final二、方法修饰符1.访问控制修饰符 公共访问控制符public、保护访问控制符protected、缺省默认访问控制符、私有访问控制符private2.非访问控制修饰符 抽象方法控制符abstract 、静态方法控制符static 、最终方法控制符final 、本地方法控制符native 、同步方法控制符synchronized三、变量修饰符公共访原创 2022-05-01 19:14:24 · 1734 阅读 · 0 评论 -
抽象方法和普通方法的区别
抽象类和抽象方法的关系: 类中有抽象方法,这个类是不完整的,就需要定义成抽象类 抽象类可以没有抽象方法,但有抽象方法的类一定是抽象类。抽象类和普通类的区别? 抽象类可以定义抽象方法,普通类不可以。 抽象类不能创建对象,普通类可以。 除此以外,普通类能做的事,抽象类都可以...原创 2022-05-01 18:35:51 · 1085 阅读 · 0 评论 -
构造代码块和静态代码块
构造代码块 //构造代码块 /* { System.out.println("构造代码块1"); }*/ //作用:抽取所有构造方法的相同代码到构造代码块中,目的是简化代码,提高代码的复用性(不需要在所有构造方法中去重复写) { System.out.println(new Date()); }静态代码块//静态代码块 /* 执行时机:类被加载,静态代码块就会执行,只会执行一次 */原创 2022-05-01 18:34:15 · 134 阅读 · 0 评论 -
权限修饰符
目标:理解4种权限修饰符的访问权限1.什么是权限修饰符? 权限修饰符用于控制成员的访问范围。 可以修饰成员变量,方法,构造器,类,不同权限修饰符有不同的访问权限!2.权限修饰符的访问范围:✔ 同一个类中 同一个包中其他类 不同包中子类 不同包中无关类 public ✔ ✔ ✔ ✔ protected ✔原创 2022-05-01 18:31:35 · 1230 阅读 · 0 评论 -
饿汉式和懒汉式两种单例模式的优缺点
饿汉式/* 保证别人使用该类的时候,只能获取一个对象(Singleton只能有一个对象) 步骤: 1.私有类的构造器 2.提供该类的静态修饰的对象 3.提供公开的静态方法,返回该类的唯一对象 */public class Singleton { //1.私有类的构造器,目的是不让外界创建对象 private Singleton(){ } //2.提供该类的静态修饰的对象(饿汉式,对象是直接创建的)原创 2022-05-01 18:30:09 · 3233 阅读 · 0 评论 -
字符串内存图
== 比较基本类型,比较数据值 比较引用类型,比较地址值创建字符串两种方式 1.通过构造方法创建 不管参数是什么,都会在堆中new出一个新的对象 2.通过""方法创建 ""方式创建的字符串常量,会在常量池中保存: 如果常量池已经存在该常量,直接引用。 如果常量池中没有该常量,直接创建并引用。 字符串常量池的对象,是共享的,唯一的。...原创 2022-04-18 10:00:38 · 316 阅读 · 0 评论 -
成员变量与局部变量
1.成员变量和局部变量可以同名 2.在方法中访问同名的变量,会就近原则,先在方法内部找,找不到再到类中找 this关键字作用: 当方法内的局部变量和成员变量同名时,可以使用this去访问成员变量 this的本质: this本质代表某一个对象,(即this指向当前堆中的对象) this代表当前调用方法的对象,谁调用方法,方法里面的this就代表谁。...原创 2022-04-14 17:24:32 · 174 阅读 · 0 评论 -
基本类型,形参的改变不影响实参
下列代码的运行结果是(B )public static void main(String[] args) { int arr[] = {1, 3, 5, 7, 9}; int num = 10; showArray(arr, num); System.out.println("arr[2]的结果是:"+arr[2]); System.out.println("num的结果是:"+num);}private static void showArray(int[]原创 2022-04-06 20:40:52 · 136 阅读 · 0 评论 -
常见的字符的编码值(ascii码表)
A-Z 65~90a-z 97~122‘0’-‘9’ 48-57原创 2022-04-06 20:21:15 · 1451 阅读 · 0 评论 -
double和Double的区别
一、区别double是基本数据类型,Double是原始数据类型double没有方法,Double有自己的属性和方法double只创建引用,Double创建对象集合类不能存放double,只能存放Doubledouble存放在栈中,Double存放在堆中 栈的存取速度要高于堆,另外栈中的数据可以共享double不会创建对象,只会建立两个引用,同时指向变量“0”(栈数据共享)double a = 0;double b = 0;Double会创建两个对象,即使对象所原创 2022-04-05 15:31:14 · 1000 阅读 · 0 评论 -
JVM 简单基本概念
在这里插入图片描述原创 2022-04-03 20:01:15 · 277 阅读 · 0 评论 -
数组:静动态初始化
原创 2022-04-03 19:40:58 · 252 阅读 · 0 评论 -
数组内存图
原创 2022-04-03 15:45:34 · 80 阅读 · 0 评论 -
产生[a,b]范围的随机数,包含a和b的范围
Random r = new Random();int number = r.nextInt(b-a+1)+a;原创 2022-04-01 17:23:57 · 190 阅读 · 0 评论 -
for嵌套循环
for (int i = 1; i <= 5 ; i++) { // i表示多少行 for (int k = 0; k <i; k++) { // k 表示都是列 System.out.print("*"); } System.out.println(); } }原创 2022-04-01 17:16:06 · 245 阅读 · 0 评论 -
循环语句死循环
for循环for(;; ){}while循环while(true){}原创 2022-04-01 17:13:29 · 123 阅读 · 0 评论 -
java运算符分类
算术运算符算术运算符主要用于进行基本的算术运算,如加法、减法、乘法、除法等。赋值运算符赋值运算符是指为变量或常量指定数值的符号。如可以使用 “=” 将右边的表达式结果赋给左边的操作数。比较运算符比较运算符用于判断两个数据的大小,例如:大于、等于、不等于。比较的结果是一个布尔值( true 或 false )。逻辑运算符逻辑运算符主要用于进行逻辑运算。Java 中常用的逻辑运算符如下表所示:条件运算符条件运算符( ? : )也称为 “三元运算符”。语法形式:布尔表达式 ? 表达式1原创 2022-03-31 19:30:50 · 837 阅读 · 0 评论 -
float小细节
float c=2 正确float c=2.0 错误float c=2.0F 正确原创 2022-03-31 18:46:05 · 270 阅读 · 0 评论 -
=与==的区别
原创 2022-03-31 18:36:39 · 86 阅读 · 0 评论 -
JAVA中“+=”和“=+”有什么区别?
+=:i += 1就相当 i = i + 1=+:i =+ 1就相当 i = + 1原创 2021-12-01 10:51:53 · 2519 阅读 · 0 评论 -
io 遍历文本、查询指定内容
File file = new File("E:\\test\\hello.txt"); BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(file))); List<String> list = new ArrayList<>(); String lineTxt = null; /*while ((l原创 2021-08-13 15:41:54 · 675 阅读 · 0 评论