
Java
文章平均质量分 86
Java学习
魂小猫
这个作者很懒,什么都没留下…
展开
-
Hash表、ArrayList、HashMap详解
HashMap隶属于Java中集合这一块,我们知道集合这块有list,set和map,这里的HashMap就是Map的实现类。简单来说,Map就是一个映射关系的数据集合,就是我们常见的k-v的形式,一个key对应一个value。HashMap是个啥?HashMap是基于Hash表的实现,因此,了解了什么是Hash表,那对学习HashMap是相当重要。哈希表是个啥?散列表(Hashtable,也叫哈希表),是根据键(Key)而直接访问在内存存储位置的数据结构。也就是说,它通过计算一个关于键值的原创 2021-11-22 17:23:43 · 1350 阅读 · 0 评论 -
JavaWeb学习笔记-kuangshen
JavaWeb1、基本概念1.1、前言web开发:web,网页的意思 , www.baidu.com静态webhtml,css提供给所有人看的数据始终不会发生变化!动态web淘宝,几乎是所有的网站;提供给所有人看的数据始终会发生变化,每个人在不同的时间,不同的地点看到的信息各不相同!技术栈:Servlet/JSP,ASP,PHP在Java中,动态web资源开发的技术统称为JavaWeb;1.2、web应用程序web应用程序:可以提供浏览器访问的程序;a.html原创 2021-06-07 11:11:34 · 233 阅读 · 0 评论 -
常用IO流操作
基本概念 IO:Java对数据的操作是通过流的方式,IO流用来处理设备之间的数据传输,上传文件和下载文件,Java用于操作流的对象都在IO包中IO流的分类字节流字符流该如何选择哪种IO流?如果数据通过Window自带的记事本软件打开,我们还可以读懂里面的内容,就使用字符流,否则使用字节流。 如果你不知道该使用哪种类型的流,就使用字节流。字节流字节流基础类InputStream类InputStream:字节输入流基类,抽象类是表示字节输入流的所有类的超类。read():1.从读原创 2021-05-16 16:54:46 · 154 阅读 · 0 评论 -
注解和反射
一、注解1.注解入门//什么是注解public class Demo01_Annotation extends Object { //@Override就是一个注解 @Override public String toString() { return super.toString(); }}2.内置注解package Annotation_01;//1.不是程序本身,可以对程序作出解释//可以被其它程序(比如编译器)读取//2.注解原创 2021-05-16 14:34:51 · 118 阅读 · 0 评论 -
Java多线程
一、线程简介简介生活案例多任务:边吃饭边玩手机,同时做多件事(但是实际上是分时进行的,大脑分时处理,时间交替很快)多线程:多车道,多条线路同时执行任务普通方法调用和多线程调用run()方法:当作普通方法,此时只有主线程 一条 依次执行路径调用start()方法:开启多线程,多条执行路径,主线程与子线程并行交替执行在操作系统中运行的程序就是进程(qq,播放器,游戏,IDE),播放视频时有声音,图像,字幕,这些就是由不同的线程控制进程与线程说起进程,就不得不说下程序,程序是数据和指令的有原创 2021-05-10 16:52:17 · 177 阅读 · 0 评论 -
Java-程序的入口
在运行 Java 程序时,需要有一个main() 方法public class HelloWorld{ public static void main(String[] args){ System.out.println(“Hello,World”);}}main方法的形式是固定的,不能改变。在有main方法的Java类里,右键,可以看到 Run As | Java Application菜单。如果一个类里没有main方法,右键就看不到这个菜单。...原创 2020-12-25 09:27:31 · 3895 阅读 · 0 评论 -
Java-File-文件操作
文件写入public class TestWrite{public static void main(String[] args){ // 注意: Win10下面不允许直接在根分区下创建文件,如C:/sample.txt是不行的 // 必须先创建一个子目录,然后在子目录下创建测试文件 // 创建一个临时目录 File dir = new File("E:\\linkdata\\Java_Example"); dir.mkdirs(); // 文件路径 File fil原创 2020-07-26 20:47:54 · 147 阅读 · 0 评论 -
Java-日期时间
Java 日期时间java.util 包提供了 Date 类来封装当前的日期和时间。 Date 类提供两个构造函数来实例化 Date 对象。第一个构造函数使用当前日期和时间来初始化对象。Date( )第二个构造函数接收一个参数,该参数是从1970年1月1日起的毫秒数。Date(long millisec)获取当前日期时间Java中获取当前日期和时间很简单,使用 Date 对象的 toString() 方法来打印当前日期和时间,如下所示:import java.util.Date;原创 2020-07-26 13:55:53 · 180 阅读 · 0 评论 -
Java-Exception异常
Java 异常处理异常发生的原因有很多,通常包含以下几大类:用户输入了非法数据。要打开的文件不存在。网络通信时连接中断,或者JVM内存溢出。这些异常有的是因为用户错误引起,有的是程序错误引起的,还有其它一些是因为物理错误引起的。-要理解Java异常处理是如何工作的,你需要掌握以下三种类型的异常:检查性异常:最具代表的检查性异常是用户错误或问题引起的异常,这是程序员无法预见的。例如要打开一个不存在文件时,一个异常就发生了,这些异常在编译时不能被简单地忽略。运行时异常: 运行时异常是可能被程序员原创 2020-07-26 11:55:22 · 265 阅读 · 0 评论 -
Java-Hashmap
Java HashMapHashMap 是一个散列表,它存储的内容是键值对(key-value)映射。HashMap 实现了 Map 接口,根据键的 HashCode 值存储数据,具有很快的访问速度,最多允许一条记录的键为 null,不支持线程同步。HashMap 是无序的,即不会记录插入的顺序。基本类型 引用类型boolean Booleanbyte Byteshort Shortint Integerlong Longfloat Floatdouble Doublechar Ch原创 2020-07-24 22:41:33 · 108 阅读 · 0 评论 -
Java-Iterator迭代器
Java Iterator(迭代器)Java Iterator(迭代器)不是一个集合,它是一种用于访问集合的方法,可用于迭代 ArrayList 和 HashSet 等集合。迭代器 it 的两个基本操作是 next 、hasNext 和 remove。调用 it.next() 会返回迭代器的下一个元素,并且更新迭代器的状态。调用 it.hasNext() 用于检测集合中是否还有元素。调用 it.remove() 将迭代器返回的元素删除。Iterator 类位于 java.util 包中,使用前需原创 2020-07-24 21:53:41 · 133 阅读 · 0 评论 -
Java-泛型-ArrayList
Java ArrayListArrayList 类是一个可以动态修改的数组,与普通数组的区别就是它是没有固定大小的限制,我们可以添加或删除元素。ArrayList 类位于 java.util 包中,使用前需要引入它,语法格式如下:import java.util.ArrayList; // 引入 ArrayList 类ArrayList<E> objectName =new ArrayList<>(); // 初始化//E: 泛型数据类型,用于设置 objectName原创 2020-07-24 21:17:23 · 1103 阅读 · 0 评论 -
Java-泛型
泛型定义为了避免项目中出现”ClassCastException“最好的做法就是直接回避掉对象的强制转换。因此出现了泛型技术。泛型技术的本质**类中的属性或方法的参数与返回值类型可以由对象实例化的时候动态决定。**那么此时需要在类定义的时候明确的定义占位符。此时类的属性的数据类型并不确定,而是由外部决定Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。泛型的本质是参数化类型,也就是说所操作的数据类型原创 2020-07-24 17:56:13 · 83 阅读 · 0 评论 -
Java-内部类
一.内部类基础在 Java 中,可以将一个类定义在另一个类里面或者一个方法里面,这样的类称为内部类。广泛意义上的内部类一般来说包括这四种:成员内部类、局部内部类、匿名内部类和静态内部类。下面就先来了解一下这四种内部类的用法。1.成员内部类成员内部类是最普通的内部类,它的定义为位于另一个类的内部,形如下面的形式:class Circle { double radius = 0; public Circle(double radius) { this.radi原创 2020-07-23 22:35:14 · 89 阅读 · 0 评论 -
Java-接口
Java 接口接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。接口并不是类,编写接口的方式和类很相似,但是它们属于不同的概念。类描述对象的属性和方法。接口则包含类要实现的方法。除非实现接口的类是抽象类,否则该类要定义接口中的所有方法。接口无法被实例化,但是可以被实现。一个实现接口的类,必须实现接口内所描述的所有方法,否则就必须声明为抽象类。另外,在 Java 中,接口类型可原创 2020-07-23 17:12:10 · 93 阅读 · 0 评论 -
Java-抽象类
抽象类在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。抽象类除了不能实例化对象之外,类的其它功能依然存在,成员变量、成员方法和构造方法的访问方式和普通类一样。由于抽象类不能实例化对象,所以抽象类必须被继承,才能被使用。也是因为这个原因,通常在设计阶段决定要不要设计抽象类。父类包含了子类集合的常见的方法,但是由于父类本身是抽象的,所以不能使用这些方法。在Java中抽象类表示的是一种原创 2020-07-23 14:25:07 · 81 阅读 · 0 评论 -
Java-字符与字符串的转化
Str转charcharAt()和toCharArray()char ch=str.charAt(8);char[] chs=str.toCharArray();char转str char[] chs2={'l','i','n','k'}; String str2=new String(chs2,0,4);原创 2020-07-22 17:32:21 · 432 阅读 · 0 评论 -
Java-常见的工具类-字符串
字符串的拼接String s=("link"+" home");字符串的长度int n=s.length();空字符串String s1="";int n1=s1.length();空字符串的长度为0,null和空字符串不一样。null不指向任何对象子串 String sub=s.substring(0,4);从0开始substring(beginIndex,endIndex);begin从0开始,end不包含判断字符串是否相同if(s1.equals(s2)) {原创 2020-07-22 16:11:32 · 224 阅读 · 0 评论 -
Java-static-静态方法/全局方法
静态方法 无法声明对象!public class isPrime { // 判断n是否为质数; true,是质数; false, 不是质数 public static boolean isPrimes( int n ) { for(int i=2; i<n ; i++) { if( n % i == 0) { return false; } } return true; }}public class mai...原创 2020-07-22 15:09:00 · 1199 阅读 · 0 评论 -
Java-包
包(package)包:在java里用于对class的分层管理,实际上就是目录package my2;public class Student { public int id; public String name; public void show() { System.out.println("name:"+name+" id:"+id); }}package day9;import my2.Student;public class my { publi原创 2020-07-22 14:49:36 · 102 阅读 · 0 评论 -
Java-toString
1.所有类都继承于Object2.所有类都可以重写Object.toString方法原创 2020-07-22 13:50:18 · 102 阅读 · 0 评论 -
Java-多态
面向对象编程有三大特性:封装、继承、多态。封装隐藏了类的内部实现机制,可以在不影响使用的情况下改变类的内部结构,同时也保护了数据。对外界而已它的内部细节是隐藏的,暴露给外界的只是它的访问方法。继承是为了重用父类代码。两个类若存在IS-A的关系就可以使用继承。,同时继承也为实现多态做了铺垫。多态一:什么是多态一种事物的多种存在形态,比如说男人和女人都是人,人可以分为男人和女人二:java中多态的使用场景(1)方法的重载和重写(2)子类对象的多态性使用前提:a.有类的继承 b.由子类对父类方法原创 2020-07-22 13:47:03 · 96 阅读 · 0 评论 -
Java-继承
继承是什么按照现有类的类型来创建新类,无需改变现有类的形式,采用现有类的形式并在其中添加新代码,这种方法就叫做继承。继承会使子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法。继承关键字extends要想让一个类继承另一个类,就要使用到关键字 extendspublic class Test extends Object{}表示的就是 Test 类继承了 Object 类,我们可以说,Test 是 Object 的子类,也可以说,Object 是 Test 的超类或父原创 2020-07-22 13:41:03 · 98 阅读 · 0 评论 -
Java-当前对象this
对象创建的过程和this的本质构造方法是创建Java对象的重要途径,通过new关键字调用构造器时,构造器也确实返回该类的对象,但这个对象并不是完全由构造器负责创建。创建一个对象分为如下四步:1. 分配对象空间,并将对象成员变量初始化为0或空2. 执行属性值的显示初始化3. 执行构造方法4. 返回对象的地址给相关的变量this的本质就是“创建好的对象的地址”! 由于在构造方法调用前,对象已经创建。因此,在构造方法中也可以使用this代表“当前对象” 。this最常的用法:1. 在程序中产生二原创 2020-07-20 19:49:06 · 1256 阅读 · 0 评论 -
Java-类和方法
方法Method类{属性:描述”我有什么“方法:描述”我能做什么“ }基本类型修饰符 返回值类型 名称(参数列表){方法} public void show() { for(int i=0;i<10;i++) { System.out.println("报数:"+i); } } public int max_value(int[] num1) { int num=num1.length; int result=0; for(int i=0原创 2020-07-20 17:30:14 · 87 阅读 · 0 评论 -
Java-对象和类
对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。类:类是一个模板,它描述一类对象的行为和状态。Java 中的类类可以看成是创建 Java 对象的模板。class:用于描述一种数据类型(对象)类的属性可以是其他类public class student { public String id;//学号 public String name;//姓名 public boolean sex;//原创 2020-07-20 14:21:05 · 129 阅读 · 0 评论 -
Java-数组
声明数组变量首先必须声明数组变量,才能在程序中使用数组。下面是声明数组变量的语法:dataType[] arrayRefVar; // 首选的方法 或 dataType arrayRefVar[]; // 效果相同,但不是首选方法注意: 建议使用 dataType[] arrayRefVar 的声明风格声明数组变量。 dataType arrayRefVar[] 风格是来自 C/C++ 语言 ,在Java中采用是为了让 C/C++ 程序员能够快速理解java语言。创建数组Java语原创 2020-06-27 11:12:28 · 201 阅读 · 0 评论 -
Java-循环
循环(1)while循环while( 布尔表达式 ) {//循环内容}(2)do while循环do {//代码语句}while(布尔表达式);对于 while 语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次。do…while 循环和 while 循环相似,不同的是,do…while 循环至少会执行一次。注意:布尔表达式在循环体的后面,所以语句块在检测布尔表达式之前已经执行了。 如果布尔表达式的值为 true,则语句块一直执行,直到布尔表达式的原创 2020-06-26 14:45:05 · 154 阅读 · 0 评论 -
Java-条件
1.if语句 int age=13; // if (E1) //{ } if(age<12) { System.out.println("未满12岁,禁止骑行小黄车"); } System.out.println("done.");2.if else语句 int age=14; if(age<12) { System.out.println("未满12岁,禁止骑行小黄车."); System.out.println("杯具."); } else原创 2020-06-19 19:40:18 · 149 阅读 · 0 评论 -
Java-day1
System.out.println() System.out.println("hello world"); System.out.println("世界 你好"); System.out.println("我今年"+35+"岁"); //括号内可做运算 System.out.println("数值"+(123)); System.out.println("平方"+(123*123)); System.out.println("立方"+(123*123*123));trick注原创 2020-06-18 18:11:07 · 140 阅读 · 0 评论