- 博客(55)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Java的开发环境的搭建
JVMJVM是Java的虚拟机,是运行Java代码的假设计算机,是我们Java程序的运行环境,编写的代码都是在JVM上运行的。跨平台:(注意)跨平台的是Java语言,不是JVM。任何软件都运行在我们的操作系统当中,而Java语言编写的软件可以运行在任何操作系统。JDK与JREJDK(Java Development Kit):java语言开发工具包JRE(Java Runtime Environment):java程序的运行环境,包括我们JVM和运行时所需要的的核心类库。JDK的环境配置
2020-07-28 20:10:39
113
原创 File打印文件内容,输出内容
import java.io.*;public class Test_File { public static void main(String[] args){// String path = "C:\\Users\\zhongdmno\\Desktop\\test01.txt"; //文件路径// printAll(path);// printRow(path); createFile("C:\\Users\\zhongdmn
2021-11-11 21:02:02
768
原创 Mybatis的动态SQL
if,where语句where标签:提供关键字where,并且可以去除多余的and,当没有一个条件满足时,去除关键字whereif:写条件判断,test是判断语句choose、when、otherwise在mybatis中,只有if,没有else如果表示else可以通过 choose选择结构表示choose 类似 switch选择结构,otherwise 类似 switch中的 default,类似 if中的elseif、when的区别:1.if可以同时满足多个条件2.when 只能满
2020-11-01 21:25:47
531
原创 Mybatis的嵌套查询
嵌套查询是延迟加载的前提.之前的关联查询,是在一次查询中查询多个表。嵌套查询就是把多个表拆成一个一个表,每次执行单表,执行多次查询一对一一个订单只对应一个用户。需求:查询所有订单,并且显示出对应的用户信息entityOrdersMapper接口CustomerMapper接口OrdersMapper.xmlCustomerMapper.xml一对多从客户查询每个客户的所有订单信息entityCustomerMapper接口OrderMapper接口Custome
2020-11-01 15:36:18
239
原创 Mybatis的JavaBean一对一,一对多
entity:PersonCard一对一:由上面2张图片可以看出Person中有Card属性,表示Person对应着Card,Card表中字段映射到card对象中。接口PersonMapperPersonMapper.xml参数:id:接口idresultMap:对应下面resultMap的id,因为是关联查询,所以不能用resultType(返回参数类型)type:对应查询的JavabeanautoMapping:如果字段和属性值完全一致的情况下,可以把主键以外的res
2020-11-01 15:05:10
408
1
原创 Mybatis的分页
Mybatis的分页需要使用到工具PageHelper,PageHelper是GitHub开源的工具。1,先导入相关依赖,pom.xml<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.1.10</version></dependency&
2020-11-01 14:17:17
68
原创 练习题(.compareTo()方法,字符串进行字典书序比较)
需求:对一个字符串数组进行字典书序从小到大的排序。{“nba”,“abc”,“cba”,“aaaa”,“z”,“qq”}排序前{“aaaa”,“abc”,“cba”,“nba”,“qq”,“z”}排序后import java.util.Arrays;public class Work7 { public static void main(String[] args) { String[] str = {"nba","abc","cba","aaaa","z","q
2020-09-05 16:59:34
217
原创 练习题(String.split() 和 String.subString()方法)
String s=”name=zhangsan age=18 classNo=090728”;将上面的字符串拆分,结果如下: zhangsan 18 090728public class Work { public static void main(String[] args) { String s = "name=zhangsan age=18 classNo=090728"; String[] str = s.split(" ");
2020-09-05 14:37:40
419
原创 集合3(泛型)
泛型概念:广泛的类型,在定义一个类的时候,类型中有些方法参数,返回值类型不确定,就使用一个符号,来表示那边尚未确定的类型,这个符号就称之为泛型。import java.util.ArrayList;public class Text9 { public static void main(String[] args) { //需求:求集合中每个元素的长度 ArrayList list = new ArrayList(); list.add("
2020-09-03 20:59:32
167
原创 集合2(实现类:ArrayList,LinkedList,Vector)
ArrayList类:API介绍:解析:ArrayList类是List接口直接实现类,其底层由可变数组构成。支持null,但线程不安全。如果需要线程安全集合请Vector。构造方法:import java.util.ArrayList;import java.util.Collection;public class Text2 { public static void main(String[] args) { //ArrayList 设置集合容器大小为10
2020-09-03 19:23:08
132
原创 集合1(接口:Collection,List,Iterator,ListIterator)
集合概述:用于存储多个对象的长度可变且能够动态管理元素的容器。import java.util.ArrayList;import java.util.List;public class Text1 { public static void main(String[] args) { //需求1:设置一个长度为3的Object类数组 Object[] arr = new Object[3]; arr[0] = new Object();
2020-09-02 22:15:19
148
原创 String类
String类:API介绍:解析:String类代表的是字符串,Java中所有的字符串都是该类的一个实例化对象。但String类被final关键字修饰,所以一旦被创建就无法被更改,String对象不可变但可以共享构造方法:public class Demo4 { public static void main(String[] args){ //1,直接赋值给对象 String s1 = "abc"; System.out.p
2020-09-01 22:34:39
123
原创 Scanner类
Scanner类:API介绍:解析:Scanner类是一个文本扫描器类,对字符串文本进行扫描操作。构造方法:import java.io.File;import java.io.FileNotFoundException;import java.io.InputStream;import java.util.Scanner;public class Demo4 { public static void main(String[] args) throws FileNotFou
2020-09-01 20:49:54
413
原创 Object类
Object类:API介绍:解析:Object类是所有Java中所有类的根(顶级父类),每个类都是Object的子类,其子类可以重写该类的方法,来满足自身需求。构造方法public class Demo { public static void main(String[] args) { Object object = new Object(); System.out.println(object);//java.lang.Object@50cbc4
2020-09-01 20:11:31
96
原创 面向对象8(接口)
接口:概念:使用 interface 修饰的代码块。语法:访问修饰符 interface 接口名{接口成员}访问修饰符:暂时使用publicinterface:关键字,含义是接口。接口名:标识符。接口成员:静态常量,抽象方法。interface inter{ public static final int x = 100; public abstract void show();}class Method implements inter{ @Overri
2020-08-29 16:48:28
114
原创 面向对象7(抽象类)
抽象类:概念:使用abstract修饰的类时机:该类中存在抽象方法。该类的对象只是一种概念,在现实世界不存在该类的对象语法:访问修饰符 abstract 类名{…}访问修饰符:暂时都用public修饰,代表谁都能访问该类。abstract 关键字:含义是抽象修饰成员:类 和 方法。注意点:抽象类中不一定具有抽象方法,可以有其他成员。抽象类无法实例化抽象类的目的就是被子类继承。抽象类具有构造方法abstract不能与private一起使用,因为abstract修饰方法
2020-08-29 15:32:11
117
原创 面向对象6(多态(重要))
多态:Java中概念:父类类型引用指向子类对象。概述:事物的多种状态。对象的多态:同一个对象,有不同的名称和描述。类的多态:同一个类,可以在不同场景下有不同的表现。多态的前提:要有子父类的继承(实现)关系。有方法的重写。父类的引用指向子类的对象。(熟知)多态中成员方法的访问特点:编译看左边,运行看右边。编译的时候,要看【 = 】左边的引用所属的类型中,是否有该方法的定义,没有就编译失败。运行的时候,要看【 = 】右边的引用所属的类型中,是如何实现该方法的。最终运行的右边子类
2020-08-29 15:08:53
92
原创 面向对象5(final关键字)
final关键字:含义:最终的,最后的,表示不能再改变。修饰成员:类,属性,方法。修饰的成员不能被修改,如:修饰类,无法被继承。修饰属性:变量变成常量,不能修改。(因为变成常量,需要赋予初始值)修饰方法:方法不能被重写。...
2020-08-29 13:13:19
72
原创 面向对象5(代码块)
概念:使用括号 {…} 括着的多行代码。分类:局部代码块语法:{…}定义位置:方法之内public class Demo { public static void main(String[] args) { { int num = 10; System.out.println(num); } }}作用:限制局部变量的生命周期和使用范围。构造代码块语法:{…}定义位置:类中方法外
2020-08-29 11:37:16
120
原创 面向对象4(继承)
概述:类与类之间产生关系,一个类在另一个类的基础上创建,新建的类使用已创建的类的类成员,但也有自己特有的类成员,这两个类的关系就是继承。语法:class A{}class B extends A{}A类:称为父类,又称为基类,超类。B类:称为子类,又称为派生类,衍生类。extends : 关键字,表示继承继承的优缺点:优点:提高代码的复用性。提高代码的可维护性。多态的前提缺点:提高耦合,降低内聚(当父类损坏,继承了子类都会出现BUG)解决:装饰着设计模式代理设计
2020-08-29 10:27:37
93
原创 面向对象4(this关键字,构造方法,static关键字)
this关键字含义:这个对象,本对象作用:区分本对象的成员变量 和 局部变量this.成员名public class Student{ private String name; public String getName() { return name; } public void setName(String name) { 实际参数的局部变量名与成员变量名一致,系统不识别 若局部变量名随意起名,无法见名思意,对以后编
2020-08-28 22:30:40
136
原创 面向对象3(封装)
封装:概念:隐藏对象的内部信息,给外部提供一些访问内部的接口。作用:提高代码复用性,提高代码安全性,提高代码易用性。实现步骤:隐藏内部信息,使用 private 关键字修饰属性。private:是关键字,表示 私有的 只能修饰属性和方法,修饰成员只能被类访问。提供的访问接口(方法),getter / setter 方法返回值类型必须与修饰的属性类型一致getXxx / setXxx : 方法名必须 get / set 开头,后面紧跟属性名,首字母大写参数类型必须与修饰的属性类型一
2020-08-28 20:43:55
170
原创 面向对象2(匿名对象)
匿名对象:概念:没有名字的对象,没有被变量引用指向的对象空间。语法:new 类名()public class NiMingDemo{ int num;}public class Demo{ public static void main(String[] args){ (1) SyStem.out.println(new NiMingDemo().num);// 0 (2)NiMingDemo nm = new NiMingDemo(); System.out.prin
2020-08-28 20:16:14
152
原创 面向对象1(类与对象)
一,面向对象:1,面向对象和面向过程的区别面向过程:强调的解题步骤,过程。更强调的是逻辑和方法,解决问题方式:由上而下,逐步分解。面向对象:强调的是主体,对象,更强调谁能解决问题。解决问题方式:由下而上,逐层组装。2,面向对象和面向过程的关系面向对象的基础是面向过程,面向过程成就面向对象。3,面向对象的优点:更适合人类思考方法。由劳动者变成指挥者。二,对象:概念:万物皆对象,在客观世界存在的客观事物。Java中的对象:在堆内存的一块空间。认识对象:静态特征(属性) 和 动态特征(
2020-08-27 21:44:00
228
原创 Java,数组的冒泡排序,二分查找
public class Text2 { public static void main(String[] args) { //创建数组 int[] arr = {10,9,8,7,6,5,4,3,2,1}; //冒泡排序,从小到大 for (int i = 1; i < arr.length ; i++) { for (int j = 0; j < arr.length-i ; j++) { .
2020-08-23 15:50:39
245
原创 Java,计算用户输入的日期离1900年1月1日相距多少天。(注意闰年,每个月份天数不一样)
计算用户输入的日期离1900年1月1日相距多少天。(注意闰年,每个月份天数不一样)分析:1,年:1.1,按平年算,每年365天1.2,每个闰年加1天,若输入的那年是闰年,2月后,要加1天,反之不用3,月:安装平年每个月的天数:31,28,31,30,31,30,31,31,30,31,30,314,日:天数直接相加import java.util.Scanner;public class Text1 { public static void main(String[] args
2020-08-22 15:19:20
2156
原创 if语句的多重条件练习题
现在有一个银行保险柜,有两道密码。想拿到里面的钱必须两次输入的密码都要正确。如果第一道密码都不正确,那直接把你拦在外面;如果第一道密码输入正确,才能有权输入第二道密码。只有当第二道密码也输入正确,才能拿到钱!(两道密码自己设,要求密码长度不能低于6位)import java.util.Scanner;public class Text1 { public static void main(String[] args) { Scanner sc = new Scanne
2020-08-22 13:34:09
900
原创 Java,求整数各个位上的数值(常用)
输入一个四位数的整数,要求编程将这个四位数中的个位,十位,百位,千位分别输出。public class Text1 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.print("输入四位整数:"); int num = sc.nextInt(); int a,b,c,d;//代表各个位上的变量
2020-08-22 13:17:55
2909
原创 HTML的标签与选择器
div和span标签语法:<div>.....</div>效果:换行<span>....</span>效果:无注意:1,div由于只有换行效果所以无需修改默认样式就能将内容块级化(独占一行)。所以div又称为块级标签/块级元素。其他块级标签有:h1~h6,p,blockquote…【它们都能独占一行】2,span没有效果,所以内容没有块级化(不会独占一行),所以span又称为行内标签/行内元素/内联元素。其他行内标签:font,a…3,一般
2020-08-11 20:41:49
1592
原创 Java中的方法
概述:1,具有某种特定功能的代码段。2,当某段代码被经常使用,所以用大括号把这段代码包起来,起个名字。以后直接用这个方法名代替这段代码。好处:1,提高了代码的复用性。2,提高了代码的封装性,无法直接访问调用,要get和set方法。3,简化了软件设计的思维难度。定义:格式://有返回类型修饰符 返回值类型 方法名(参数){ 方法体语句 return;}//无返回类型修饰符 void 方法名(参数){ 方法体语句 System.out.println();}如下:pu
2020-08-10 20:10:22
87
原创 Java的命名规则(非常重要)
命名规则:约定俗成的规则,编译器不会检查,但开发中必须要遵守的规则(主要方便查看代码)1,包:全部小写,域名倒着写(因为包就是文件档)如:com.baiducom是一个文件夹,baidu是一个子文件夹2,类和接口:每个单词的首字母大写,其余字母都小写。一般是一个名词。如:HelloWorld3,方法:第一个单词的首字母小写,从第二个单词开始,首字母大写,其他小写。一般是一个动词或动宾结构。如:eat,getMax,getName4,变量:第一个单词的首字母小写,从第二个单词开始
2020-08-08 16:25:34
119
原创 Java的继承
继承:概述:多个类中都具有一些相同的属性和行为,将这些相同的属性和行为提取到一个单独的类中,那么这些类就不用重复定义这些属性和行为,只需要继承一个类就可以了。继承关系是事物之间的一种所属关系,如上图所示,兔子和羊都属于食草动物,狮子和豹都属于食肉动物。父类更通用,子类更具体,通过继承,可以让多个事物形成一种关系体系。定义:就是子类继承父类的属性和行为,使子类具有父类相同的属性和行为,子类可以直接访问我们父类中的非私有的属性和行为。好处:1,提高代码的通用性。2,类和类之间产生关系,是多态的
2020-08-08 14:33:07
154
原创 练习题之tocharArray()
编一个程序,输入一个正整数,统计这个正整数的各位数字中零的个数,并且求出各位数字中的最大者。package test;import java.util.Scanner;public class Demo { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println(); String str = sc.nex
2020-08-07 21:20:41
246
原创 练习题之循环判断
编一个程序,统计一笔开支。每个苹果0.8元,第一天买2个苹果,第二天开始,每天买的苹果数是前一天的二倍,直到每天购买的苹果数要超过100的时候,就不购买了。求出平均每天花费多少钱?*/public class Demo2 { public static void main(String[] args) { int num=1,num1=0;//苹果数量 double money=0.8;//每个苹果的价格 int day=0;//购买天数
2020-08-07 21:17:16
287
原创 Math类方法
Math 类包含执行基本数字运算的方法,如基本指数,对数,平方根和三角函数。其中所有的方法都是静态的 public static void main(String[] args) { //public static double abs(double a):返回double的绝对值 double d1 = Math.abs(-2); System.out.println(d1);//输出绝对值 //public static double
2020-08-06 21:33:24
114
原创 Arrays类的方法
该类包含用于操作数组的各种方法(如排序和搜索)。其中所有的方法都是静态的方法,所以调用起来非常方便。public static String toString(int[] arr):返回指定数组内容的字符串的标识形式**想要把数组中的内容打印出来,直接使用toString方法只会打印出数组的地址,因此需要使用Arrays的toString方法,可以从其内部实现中看出来,该方法支持入参可以是long,float,double,int,boolean,byte,object型的数组。 public.
2020-08-06 21:02:55
119
原创 数组ArrayList类(02)
如何存储基本类型的数据类型:ArrayList对象不能存储基本类型,只能存储引用类型。不能写,但是存储基本类型我们可以选择它的包装类。byte Byteshort Shortint Integer(注意)long Longfloat Floatdouble Doublechar Character(注意)boolean Boolean 除了Integer和Character,其他就是首字母大写public static void main(String[] ar
2020-08-06 20:05:51
148
原创 数组ArrayList类(01)
固定长度的数组public class Student { //成员变量 private String name; private int age; //无参构造方法 public Student(){ } //有参构造方法 public Student(String name,int age){ this.name=name; this.age=age; } public String
2020-08-05 21:54:19
131
原创 Random随机数的生成
Random类import java.util.Random;public class Demo { public static void main(String[] args) { //创建随机数的对象 Random random = new Random(); //范围由 0+1<=num<100+1,包底不包顶 int num = random.nextInt(100)+1; System.out
2020-08-05 20:56:13
108
原创 比较得出最大值
import java.util.Scanner;public class Demo { public static void main(String[] args) { //求最大值 Scanner sc = new Scanner(System.in); System.out.println("请输入数值a:"); int a = sc.nextInt(); System.out.println("请输入数值b
2020-08-05 20:46:49
377
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人