Java基础
文章平均质量分 51
Java基础知识
异色小世界
这个作者很懒,什么都没留下…
展开
-
Java基础总结
Java程序运行机制 —— 编译型语言与解释型语言基础语法2.1 注释2.2 标识符(关键字)2.3 数据类型(包括强类型语言与弱类型语言的讲解) 数据类型拓展 2.4 类型转换 &..原创 2021-02-23 14:45:27 · 111 阅读 · 0 评论 -
【Java】static应用知识:代码块
一、代码块概述二、例子:1、静态代码块 public static String name; public static void main(String[] args) { System.out.println("===== main ====="); System.out.println(name); } /** * 静态代码块 * 特点:与类一起加载,自动触发一次,优先执行 * 作用:原创 2021-11-18 15:25:42 · 291 阅读 · 0 评论 -
【Java】static关键字案例:创建工具类
一、工具类概述1、工具类是什么,有什么好处?工具类内部都是一些静态方法,每个方法完成一个功能一次编写,处处可用,提高代码重用性2、工具类有什么要求建议将工具类构造器私有化私有化目的:禁止外部创建对象,因为工具类里面都是静态方法,直接用类名访问即可。(还可以节约内存)二、工具类案例1、利用工具类,生成随机验证码工具类:(生成随机验证码)public class VerifyTool { /** * 构造器私有化 */ private Verif原创 2021-11-18 14:31:38 · 2269 阅读 · 0 评论 -
Java静态关键字:static概述
一、static关键字概述1、static关键字作用static是静态的意思,可以修饰成员变量,表示该成员变量在内存中只存储一份,可以被共享访问、修改。2、两种成员变量(成员方法同理)// 静态成员变量public static int onLineNumber;// 实例成员变量private String name;private int age;public static void main(String[] args) { // 1、静态成员变量:类名.静态成员变量原创 2021-11-18 11:37:19 · 253 阅读 · 0 评论 -
String类使用案例(生成验证码、屏蔽手机号)
1、String类开发验证码功能// 1、定义可能出现的字符信息String datas = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456";// 2、循环5次,每次生成一个随机的索引,提取相应的字符连接起来即可String code = "";Random r = new Random();for (int i = 0; i < 5; i++) { // 随机获得一个索引 int index原创 2021-11-08 17:06:45 · 518 阅读 · 0 评论 -
数组使用案例:求最值,猜数字游戏,随机排名,冒泡排序
1、求最值int[] arr = {12,23,3,45555,22,10000};int max = arr[0];for (int i = 1; i < arr.length; i++) { if(arr[i]>max){ max = arr[i]; }}System.out.println("数组的最大值是:"+max);2、猜数字代码实现:// 1、定义数组int[] nums = new int[5];// 2、生成五个随机原创 2021-11-02 15:33:49 · 2242 阅读 · 0 评论 -
Java数组的定义,以及数组的数据类型
参考视频:数组定义方式一,数组定义方式二一、创建数组1、静态初始化演示代码// double[] scores = new double[]{99.4,39,100};double[] scores = {99.4,39,100};// int[] ages = new int[]{12,33,23};int[] ages = {12,33,23};// String[] names = new String[]{"张三","李四","王五"};String[] names = {"原创 2021-11-02 12:02:07 · 200 阅读 · 0 评论 -
Random类和猜数字游戏(Java死循环、随机数)
本文参考视频:案例技术:随机数和猜数字游戏1、Java中生成随机数的类:Random类Random r = new Random();// ctrl + alt + t , 选择循环代码块(或者按fori回车,直接生成for循环)for (int i = 0 ; i<10 ; i++) { // 表示范围:0 ≤ a < 100 int a = r.nextInt(100); System.out.println(a);}// 减加法,生成某个区间内的随机数S原创 2021-11-02 10:53:14 · 1438 阅读 · 0 评论 -
PageHelper直接对List进行分页的方法
项目中遇到的问题:PageHelper 的分页,只对 PageHelper.startPage(pageNum,pageSize); 下面的第一条sql语句起作用,那如果有两条sql语句怎么办?我这次写的代码,就是有两条sql语句,得到两个list,然后把两个list拼接在一起,再进行分页。此时PageHelper 的分页就不能用了,需要想一个办法,让PageHelper 直接处理最终的 list,方法有两种:第一种:重新自定义PageInfo类,能解决问题,但是比较繁琐,不探究。第二种:(推荐转载 2021-09-10 17:46:48 · 2813 阅读 · 0 评论 -
Java集合——Map集合:Map接口的基本使用
Map集合概述特点:存储一对数据(Key-Value),无序、无下标,键不可重复。方法:V put(K key , V value) // 将对象存入到集合中,关联键值。key重复则覆盖原值Object get(Object key) // 根据键获取相应的值keySet // 返回所有的keyCollection values() // 返回包含所有值的Collection集合。Set<Map.Entry<K,V>> // 键值匹配的set集合原创 2021-09-02 17:15:57 · 103 阅读 · 0 评论 -
Java集合——泛型
Java泛型是jdk1.5中引入的新特性,本质是参数化类型,把类型作为参数传递常见形式有泛型类、泛型接口、泛型方法语法<T,…> T成为类型占位符,表示一种引用类型好处(1) 提高代码重用性(2) 防止类型转换异常,提高代码安全性一、泛型类创建泛型类:package List;/** * 泛型类 * 语法,类名<T> * T是类型占位符,表示一种引用类型,如果编写多个,使用逗号隔开 */public class MyGener.原创 2021-08-20 15:48:12 · 576 阅读 · 0 评论 -
Java集合——List实现类
参考视频:List 实现类一、List常用实现类1、ArrayList【重点】数组结构实现,查询快,增删慢;jdk1.2版本,运行效率快,线程不安全。2、Vector数组结构实现,查询快,增删慢;jdk1.0版本,运行效率慢,线程不安全。(现在已经很少使用了)3、LinkedList双向链表结构实现,无需连续空间,增删快,查询慢。二、List实现类的使用1、ArrayList首先创建一个student类:package List;import java.util.O原创 2021-08-20 11:49:09 · 1106 阅读 · 0 评论 -
java.io.IOException: 系统找不到指定的路径 at org.apache.poi.util.TempFile.createTempFile
java.io.IOException: 系统找不到指定的路径...at java.io.createTempFile<Unknown Source>at org.apache.poi.util.TempFile$DefaultTempFileCreationStrategy.createTempFile<TempFile.java:105>at org.apache.poi.util.TempFile.createTempFile<TempFile.java:60&g原创 2021-07-26 14:31:11 · 258 阅读 · 0 评论 -
Java集合——List接口
特点:有序、有下标、元素可以重复。方法:void add(int index,Object o) //在index位置插入对象o。boolean addAll(index,Collection c) //将一个集合中的元素添加到此集合中的index位置。Object get(int index) //返回集合中指定位置的元素。List subList(int fromIndex,int toIndex) //返回fromIndex和toIndex之间的集合元素。List子接口的使用..原创 2021-07-08 11:47:53 · 77 阅读 · 0 评论 -
JAVA集合框架 1 :Collection体系集合
集合概述:概念:对象的容器,定义了对多个对象进项操作的的常用方法。可实现数组的功能。和数组的区别:数组长度固定,集合长度不固定。数组可以存储基本类型和引用类型,集合只能存储引用类型。位置: java.util.*;一、Collection体系集合Collection父接口特点:代表一组任意类型的对象,无序、无下标、不能重复。Collection父接口有list和set两个子接口,list是 有序 、 有下标、可重复的,但set 无序、无下标,不能重复。原创 2021-07-05 11:55:26 · 135 阅读 · 1 评论 -
Java常用类——SimpleDateFormat
一、简要介绍SimpleDateFormat是一个以与语言环境有关的方式来格式化和解析日期的具体类进行格式化(日期→文本)、解析(文本→日期)常用的时间模式字母字母日期或时间示例y年201908年中月份08d月中天数10H一天中小时(0-23)22m分钟16s秒59S毫秒356二、常用方法psvm(String[] args){ // 1. 创建对象,表示时间将以yyyy/MM/dd HH-mm-s原创 2021-06-04 17:38:35 · 154 阅读 · 0 评论 -
Java常用类——Calendar
一、Calendar简要介绍Calendar提供了获取或设置各种日历字段的方法构造方法protected Calendar(); 由于修饰符是protected ,所以无法直接创建该对象其他方法方法名说明static Calendar getInstance()使用默认时区和区域获取日历void set(int year, int month, int date, int hourofday, int minute, int second)设置日历的年、月、日原创 2021-06-04 17:27:06 · 123 阅读 · 0 评论 -
Java常用类——Date
Date表示特定的瞬间,精确到毫秒。Date类中的大部分方法都已经被Calendar类中的方法所取代时间单位:1s = 1,000ms = 1,000,000 μs = 1,000,000,000 nspsvm(String[] args){ // 1 创建Date对象 Date date1 = new Date(); sout(date1.toString()); //WED Sept 02 22:25:23 CST 2020 sout(date1.toLocaleString(原创 2021-06-04 17:09:54 · 135 阅读 · 0 评论 -
Java常用类——BigDecimal
double d1 = 1.0;double d2 = 0.9;sout(d1-d2);//打印结果:0.099999999999998这个打印结果显然是有问题的。之所以出现这个错误,是因为double类型是近似值存储,在运算时就会出现精度问题,所以在实际运算中,如果要做到浮点数精确运算,就需要借助BigDecimal。BigDecimal位置 java.math 包中作用精确计算浮点数创建方式 BigDecimal bd = new BigDecimal(“1.0”);BigD原创 2021-06-04 14:00:16 · 122 阅读 · 0 评论 -
Java常用类——String类
一、简要介绍字符串是常量,创建之后不可改变字符串字面值存储在字符串池中,可以共享String s = "Hello";产生一个对象,字符串池中存储String s = new String("Hello"); 产生两个对象,堆、池各一个二、常用方法// 1. length(); 返回字符串长度// 2. charAt(int index); 返回某个位置的字符// 3. contains(String str); 判断是否包含某个子字符串String content = "java是原创 2021-06-04 11:34:57 · 90 阅读 · 0 评论 -
Java常用类——包装类
一、简要介绍1、什么是包装类:基本数据类型所对应的引用数据类型2、Object 可统一所有数据,包装类的默认值是null下面是八种基本数据类型对应的包装类型:基本数据类型包装类型byteByteshortShortintIntegerlongLongfloatFloatdoubleDoublebooleanBooleancharCharacter二、类型转换与装箱、拆箱1、基本类型和引用类型的转换,可以分为以下两种原创 2021-06-03 11:18:56 · 145 阅读 · 0 评论 -
Java常用类——Object类
一、简要介绍1、 超类、基类,所有类的直接或间接父类,位于继承树的最顶层2、任何类,如没有书写extends显示继承某个类,都默认直接继承Object类,否则为间接继承3、Object类中所定义的方法,是所有对象都具备的方法4、 Object类型可以存储任何对象 1) 作为参数,可接受任何对象 2) 作为返回值,可返回任何对象二、主要方法1、getClass()方法public final Cla原创 2021-06-01 12:07:15 · 235 阅读 · 1 评论 -
Java接口
接口(Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以interface来声明。普通类:只有具体实现抽象类:具体实现和规范(抽象方法)都有接口:只有规范如下所示,创建一个接口:public interface UserService { //接口中所有的方法,其实都默认是 public abstract void add(String name);}接口需要有实现类,来实现接口中的方法。一个实现接口的类,必须实现接口内所描述原创 2021-02-25 21:23:08 · 89 阅读 · 2 评论 -
Java 抽象类与抽象方法
抽象类和抽象方法,都使用关键字 abstract 来声明。如下所示,定义一个抽象类 Action,并在类中声明一个抽象方法://抽象类public abstract class Action { //抽象方法,只有方法名字,没有方法体 public abstract void doSomething();}我们可以看到, doSomething() 只有方法名,并没有方法的实现,这就是抽象方法。那么这个方法由谁来实现呢?必须有子类实现该抽象方法,否则,从最初的父原创 2021-02-25 17:11:28 · 224 阅读 · 0 评论 -
Java 重写(Override)
重写:子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。子类和父类的方法必须要一致,方法体不同。即外壳不变,核心重写。重写都是方法的重写,和属性无关。静态方法(声明为 static 的方法 )不能被重写,但是能够被再次声明。一、方法的重写我们首先了解一下方法的重写。如下所示,在B类中声明一个方法 test():public class B { public void test(){ System.out.println("B=>test(原创 2021-02-25 15:04:20 · 915 阅读 · 2 评论 -
Java 对象和类
Java 对象和类初识面向对象对象的创建一、初识面向对象面向对象这个概念,可以和面向过程概念对比着来理解。面向过程思想:执行者角度,线性思维。步骤清晰简单,第一步,第二步……适合处理较为简单的问题。面向对象思想:指挥者角度,分类思维。解决问题时,首先思考的是将问题分类,把它们分配给不同的对象来完成。适合处理复杂的问题,适合处理需要多人协作的问题。两个概念的关系:面对复杂的事物时,我们首先需要使用面向对象的思想,从宏观上分析整个系统。但具体到微原创 2021-01-26 19:44:38 · 101 阅读 · 0 评论 -
Java数组
数组对于每一门编程语言来说都是重要的数据结构之一,不同语言对数组的实现及处理也不尽相同。Java 语言中提供的数组,用来存储固定大小的同类型元素。本文将从以下几个内容对数组进行讲解:数组概述;数组声明创建;数组使用;(重点)多维数组;Arrays类;冒泡排序。一、数组概述数组是相同类型数据的有序集合;其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们。二、数组声明创建1. 声明数组首先必须声明数组变量,才能在程序中使用数组。以int数组类型原创 2021-01-25 18:24:52 · 164 阅读 · 0 评论 -
Java方法
本文将从以下六个方面来讲解Java方法:何谓方法;方法的定义及调用;方法重载;命令行传参;可变参数;递归。一、何谓方法我们经常使用到 System.out.println(),它是什么呢?System 是系统类。out 是标准输出对象。println() 是一个方法。这句话的用法是调用系统类 System 中的标准输出对象 out 中的方法 println()。那么什么是方法呢?Java方法是语句的集合,它们在一起执行一个功能。方法是解决一类问原创 2021-01-23 22:14:11 · 110 阅读 · 0 评论 -
Java Scanner 类
java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入。创建 Scanner 对象的基本语法如下: Scanner scanner = new Scanner(System.in);一、next() 与 nextLine() 接收字符串我们可以通过 Scanner 类的 next() 与 nextLine() 方法获取输入的字符串 。我们先使用 next() 方法,代码如下所示: //next方式接收用户输入的原创 2021-01-23 21:51:49 · 106 阅读 · 0 评论 -
Java 包(package)
为了更好地组织类,Java 提供了包机制,用于区别类名的命名空间。我们可以简单地将包视为文件夹,主要是为了让我们的类文件更为整洁规范。一、创建包一般情况下,我们都会将公司域名倒置作为包名。例如百度的域名为 www.baidu.com , 那么包命名则为 com.baidu.www如下所示,新建一个package,并将其命名为com.study.base,此时文件变得整洁规范。二、import关键字在一些情况下,为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用"im原创 2021-01-23 21:36:19 · 197 阅读 · 0 评论 -
Java运算符
计算机的最基本用途之一就是执行数学运算,作为一门计算机语言,Java也提供了一套丰富的运算符来操纵变量。我们可以把运算符分成以下几组:算术运算符:+,-,*,/,%,++,–赋值运算符:=,+=,-=,*=,/=关系运算符:>,<,>=,<=,==,!= ,instanceof逻辑运算符:&&,||,!位运算符:&,|,^,~,>>,<<,>>>条件运算符:(?:)其他运算符一、算术运算符:+,-,*,/原创 2021-01-23 20:49:17 · 171 阅读 · 0 评论 -
Java变量类型
Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。Java语言支持的变量类型有:类变量:独立于方法之外的变量,用 static 修饰。实例变量:独立于方法之外的变量,不过没有 static 修饰。局部变量:类的方法中的变量。下面举一个简单的例子对它们进行区分:public class Demo{ static int myAdd=0; // 类变量 String str="hello world"; // 实例变量 public原创 2021-01-23 20:12:32 · 2615 阅读 · 0 评论 -
Java类型转换
由于Java是强类型语言,因此在运算中,不同类型的数据需要先转化为同一类型,然后进行运算。Java数据类型的容量(字节大小)由低到高如下所示:低 ------------------------------------> 高byte,short,char—> int —> long—> float —> double (为什么float的容量小于long,却排在后面呢?这是因为小数的优先级一定大于整数)转换规则:不能对boolean类型进行转换。不能把对原创 2021-01-23 19:41:28 · 212 阅读 · 1 评论 -
Java数据类型拓展知识
一、整数 定义整数类型时,不同进制数字的写法不同。 //整数拓展:进制 二进制0b 八进制0 十进制 十六进制0x int i = 0b10; //二进制0b int i2 = 010; //八进制0 int i3 = 10; int i4 = 0x10; //十六进制0x 0~9 , A~F 将 i,i2,i3,i4 按顺序输出,得到的结果分别为2,8,10,16。二、浮点数 计算机在原创 2021-01-14 14:53:02 · 118 阅读 · 0 评论 -
Java数据类型(包括强类型语言与弱类型语言的讲解)
首先我们需要知道,Java是一种强类型语言。在第一部分,我将介绍何为强类型语言,它与弱类型语言有何不同。 在了解了强类型语言之后,我们再对Java语言的数据类型进行分析。(一)强类型语言与弱类型语言 1 . 强类型语言 一种强制类型定义的语言,要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用。 一旦某一个变量被定义类型,如果不经过强制转换,则它永远就是该数据类型了,强类型语言包括Java、.net 、Python、C++等语言。 也就是说,假如你定义了一个整数,如果不进原创 2021-01-13 22:10:30 · 2329 阅读 · 0 评论 -
Java程序运行机制 —— 编译型语言与解释型语言
Java程序运行过程,兼有编译型语言和解释型语言的特点。接下来,我将用通俗易懂的方式来描述编译型和解释型语言。编译型语言 编译型语言可以理解为,将一本中文书全文翻译成英文版本,以供英语母语者直接阅读。在计算机中,就是使用编译器,把源代码全部编译成机器码,然后才能执行的语言。 优点:因为编译只做一次,运行时不需要编译,所以编译型语言的程序执行效率高。 缺点:编译之后,如果需要修改,就需要整个模块重新编译,不够灵活。需要根据运行的操作系统环境编译不同的可执行文件,可移植性差。解释型语言原创 2021-01-13 21:34:26 · 238 阅读 · 0 评论