![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
weixin_44263279
这个作者很懒,什么都没留下…
展开
-
maven依赖范围
maven依赖范围既标签的可选配置:compile、test、provided、runtime、system1)编译依赖范围(compile),该范围就是默认依赖范围,此依赖范围对 于编译、测试、运行三种classpath都有效,举个简单的例子,假如项目中有spring-core的依赖,那么spring-core不管是在编译,测试,还是运行都会被用到,因此spring-core必须是编译范围(构件默认的是编译范围,所以依赖范围是编译范围的无须显示指定)2)测试依赖范围(test),顾名思义就是针对于测原创 2021-06-30 19:50:38 · 134 阅读 · 0 评论 -
百钱买百鸡
问题描述:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?问题分析:解决此问题,我们可以运用方程进行解答。设鸡翁、鸡母、鸡雏的个数分别为:x,y,z则有:x+y+z=100;5x+3y+(1/3)z=100;联立方程的到:7x+4y=100--------->y=(100-7x)/4且x的范围为:0<=x<=14;0<=y<=25public class BuyChicken { public static void main(St原创 2021-05-19 17:40:52 · 113 阅读 · 0 评论 -
spring框架
spring核心功能:1.loC(控制反转):将对象的管理权限交给spring容器,管理生命周期2.DI(依赖注入):管理IoC容器中对象的依赖关系3.AOP(面向切面的编程):对面向对象的补充,解决系统级别的非核心功能耦合度问题4.整合其他框架注册对象到spring容器中(IoC容器),受spring管理,默认情况下,注册对象为单例(全局对象唯一)class:对象的全限定类名,会自动创建对象id:当前对象的名称,不能重复,外界通过id获取到该对象,不能有特殊字符<beab id原创 2021-05-19 16:42:45 · 78 阅读 · 0 评论 -
明明的随机数
明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作(同一个测试用例里可能会有多组数据(用于不同的调查),希望大家能正确处理)。注意:输入可能有多组数据(用于不同的调查)。每组数据都包括多行,第一行先输入随机整数的个数N,接下来的N行再输入相应个数的原创 2021-05-12 16:08:38 · 54 阅读 · 0 评论 -
mybatis中select元素的属性
属性描述id在命名空间中唯一的标识符,可以被用来引用这条语句。parameterType将会传入这条语句的参数的类全限定名或别名。这个属性是可选的,因为 MyBatis 可以通过类型处理器(TypeHandler)推断出具体传入语句的参数,默认值为未设置(unset)。resultType期望从这条语句中返回结果的类全限定名或别名。注意,如果返回的是集合,那应该设置为集合包含的类型,而不是集合本身的类型。resultType 和 resultMap 之间只能同时使用一...原创 2021-05-10 16:52:18 · 3139 阅读 · 0 评论 -
线程的休眠
Sleep()sleep()方法可以实线程休眠一段时间,单位是毫秒。例如:利用线程休眠绘制直线public class SleepMethedTest extends JFrame { private Thread t; private static Color[] color = { Color.BLACK, Color.BLUE, Color.CYAN, Color.GREEN, Color.ORANGE, Color.YELLOW, Color.RED, Color.PINK, Col原创 2021-04-09 21:49:41 · 74 阅读 · 0 评论 -
取近似值
写出一个程序,接受一个正浮点数值,输出该数值的近似整数值。如果小数点后数值大于等于5,向上取整;小于5,则向下取整。首先通过字符串中indexOf()方法将输入的数字中‘.’的下标找出通过substring()方法将‘.’前后的子字符串进行获取通过parseInt将字符串转化为int性将‘.’后的内容与5进行比较import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;原创 2021-04-04 22:05:15 · 64 阅读 · 0 评论 -
数据库连接池
//数据库连接池public class JDBC6 { public static void main(String[] args) throws Exception { Properties properties=new Properties(); // InputStream in=new FileInputStream("D:/eclipsejava/com.JDBC/src/druid.properties"); properties.load(in); System.o.原创 2021-03-27 21:54:31 · 44 阅读 · 0 评论 -
双向链表
import java.util.NoSuchElementException;//双向链表public class MyLinkedList<E> { public static void main(String[] args) { MyLinkedList<String> list = new MyLinkedList<>(); list.add("bb"); list.addFirst("aa");// list.unLinkLast();.原创 2021-03-18 21:18:24 · 44 阅读 · 0 评论 -
按照层级打印文件夹目录
package com.xue;import java.io.File;//按照层级打印文件夹目录public class FileShow { public static void main(String[] args) { File file = new File("C:\\tmp"); if (file.exists()) { System.out.println(file.getParent()); show(file, 1); } } public st原创 2021-03-08 17:19:08 · 142 阅读 · 0 评论 -
数组和集合的比较
概述集合集合只能存放对象。比如你存一个 int 型数据 1放入集合中,其实它是自动转换成 Integer 类后存入的(装箱操作),Java中每一种基本类型都有对应的引用类型集合存放的是多个对象的引用,对象本身还是放在堆内存中集合可以存放不同类型,不限数量的数据类型。定义集合变量时如果不指定数据类型,则默认数据类型为Object数组和集合的比较针对Java中的数组定长,Java提出了集合框架,实现了一种变长存储数据的容器—集合【容积和当前元素个数】数组不是面向对象的,存在明显的缺陷,集合弥补了转载 2021-03-03 22:47:06 · 430 阅读 · 0 评论 -
Set接口
Set接口特点:无序、不允许重复,是Collection接口的子接口没有定义新方法,所有的方法都是Collection接口中所定义的方法实现类HashSet存储采用哈希表的方式进行存储,HashSet采用HashCode算法来存取集合中的元素,因此具有比较好的读取和查找性能LinkedHashSet是在HashSet的基础上添加一个额外的链表结构可以记录存储数据的顺序TreeSet采用的是树状结构进行数据存储HashSet底层实现方法:存储到Set中的所有数据最终都存储在一个Has原创 2021-03-08 17:14:48 · 88 阅读 · 1 评论 -
泛型
泛型什么是泛型泛型是jdk5引入的类型机制,就是将类型参数化,泛型作为一种安全机制而产生泛型在本质上是指类型参数化。所谓类型参数化,是指用来声明数据的类型本身,也是可以改变的,它由实际参数来决定。在一般情况下,实际参数决定了形式参数的值。而类型参数化,则是实际参数的类型决定了形式参数的类型。不使用泛型,使用集合时编程比较复杂List list=new ArrayList();list.add(123); //自动向上转型 int-->Integer-->Objec原创 2021-03-08 15:45:21 · 117 阅读 · 0 评论 -
深克隆
import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;import java.io.Serializable;import java.util.Date;//深克隆public class Test3 { public static void main(String[.原创 2021-03-05 16:49:53 · 90 阅读 · 1 评论 -
浅克隆
浅克隆只是克隆s1对象,但是针对s1中的引用类型属性只是克隆地址import java.util.Date;//只是克隆s1对象,但是针对s1中的引用类型属性只是克隆地址public class 浅克隆 { public static void main(String[] args) throws Exception { Stu s1=new Stu(); s1.setId(200L); s1.setBirth(new Date()); Stu s2=(Stu)s1.clone()原创 2021-03-05 16:49:02 · 69 阅读 · 0 评论 -
集合框架中的接口
集合框架中的接口Collection接口顶级接口,继承Iterable接口无序、允许重复常见方法size():int获取元素个数contains(Object):boolean 判断集合中是否有指定对象使用的是equals方法进行判断,不是==toArray():Object[] 将集合中的所有元素以数组方式进行返回add(Object):boolean 向集合中添加元素remove(Object):boolean 从集合中删除指定的元素使用的是equals方法进行判断,原创 2021-03-03 22:49:46 · 100 阅读 · 1 评论 -
数据结构--线性表、链表
数据结构1、线性表(数组)存储区间是连续的,占用内存严重,故空间复杂度很大。但数组的二分查找(前提是必须有序)时间复杂度小,为O(1);数组的特点是:寻址容易(arr[n]=arr[0]+n*每个元素的长度,时间复杂度为O(1))插入和删除困难(可能会引发一半以上的数据元素移动,时间复杂度为O(n));Java中的数组是定长的,如果需要变长则需要自行编程实现2、链表存储区间离散(数据不是连续存放的),占用内存比较宽松,故空间复杂度很小,但操作元素的时间复杂度很大,达O(N)。链表的特点原创 2021-03-03 22:45:05 · 151 阅读 · 1 评论 -
Condition接口
Condition接口Condition是j.u.c包下提供的一个接口。可以翻译成 条件对象,其作用是线程先等待,当外部满足某一条件时,在通过条件对象唤醒等待的线程。void await() throws InterruptedException;让线程进入等待,如果其他线程调用同一Condition对象的notify/notifyAll,那么等待的线程可能被唤醒。释放掉锁void signal();唤醒等待的线程void signalAll();唤醒所有线程写2个线程,其中一个打印1-52,转载 2021-03-03 22:42:38 · 221 阅读 · 0 评论 -
线程的编程4种实现方法
继承ThreadThread类本质上是实现了Runnable接口的一个实例,代表一个线程的实例public class Thread implements Runnable@FunctionalInterface //函数式接口,其中包含一个抽象方法runpublic interface Runnable {public abstract void run();}启动线程的唯一方法就是通过Thread类的start()实例方法,不能直接调用run()方法。start()方法是一个native原创 2021-03-03 11:44:56 · 57 阅读 · 0 评论 -
Lock的使用
Lock的使用Lock是java 1.5中引入的线程同步工具,它主要用于多线程下共享资源的控制。本质上Lock仅仅是一个接口,可以通过显式定义同步锁对象来实现同步,能够提供比synchronized更广泛的锁定操作,并支持多个相关的Condition对象void lock();尝试获取锁,获取成功则返回,否则阻塞当前线程void lockInterruptibly() throws InterruptedException;尝试获取锁,线程在成功获取锁之前被中断,则放弃获取锁,抛出异常boole原创 2021-03-01 17:22:04 · 174 阅读 · 0 评论 -
生产者消费者问题
多线程之间的数据通讯方法生产者消费者模式生产/消费者问题是个非常典型的多线程问题,涉及到的对象包括生产者、消费者、仓库和产品。他们之间的关系如下:生产者仅仅在仓储未满时候生产,仓满则停止生产。消费者仅仅在仓储有产品时候才能消费,仓空则等待。当消费者发现仓库没产品可消费时候会通知生产者生产。生产者在生产出可消费产品时候,应该通知等待的消费者去消费。编码实现仓库类,产品就是仓库的属性data //临界资源 public class Basket { private vo原创 2021-02-19 23:01:08 · 86 阅读 · 0 评论 -
线程同步
同步处理的引入在java语言中存在两种内建的synchronized语法:synchronized代码块和synchronized方法( 静态方法和非静态方法)可以解决线程安全问题首先synchronized将并行改为串行,当然会影响程序的执行效率,执行速度会受到影响。其次synchronized操作线程的堵塞,也就是由操作系统控制CPU的内核进行上下文的切换,这个切换本身也是耗时的。所以使用synchronized关键字会降低程序的运行效率。造成线程安全问题的主要诱因造成线程安全问题的主要诱因右两原创 2021-02-19 22:57:25 · 97 阅读 · 0 评论 -
静态static关键字
静态static关键字用于修饰成员,包括成员属性(类属性或者静态属性)、成员方法(类方法或者静态方法)随着类加载,随着类消失优先于对象,可以用类名直接访问静态属性,即static修饰事物属性可以直接以类名的方式进行调用,也可以创建对象后当作普通属性进行调用public class A { public static int kk=123;//静态属性 public static void pp() {}//静态方法 public static void main(Str原创 2021-02-03 22:11:27 · 91 阅读 · 1 评论 -
Java中的final关键字
Java中的finalfinal关键字可以修饰属性final修饰变量时,变量必须被初始化,并且不能被修改。初始化可以是在定义final变量时直接初始化或者在构造函数中初始化(则必须在所有当前类的构造器中赋值)。public class A { private final String name="123"; //使用final一般用于定义常量,可以在声明的同时进行赋值,例如PI=3.1415。一般常量的命名规则为全大写,下划线分词USE_NAME public void pp()原创 2021-02-03 21:26:55 · 48 阅读 · 0 评论 -
this和super关键字
this和super关键字this用于指代当前对象super用于指代父类对象this()表示调用另一个构造器,super()表示调用父类的某个构造器,()中的参数决定调用的是那个构造器public class A{ public A(){ //调用A(String)这个构造方法 this("aaaa")//调用当前类中的另一个构造器 } public A(String a){ System.out.println(a); }}//其他原创 2021-01-14 22:40:43 · 70 阅读 · 1 评论 -
java中的构造函数
构造函数构造函数是一种特殊的方法,主要用来在创建对象时对其进行初始化,即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。一个类可以有多个构造函数,可根据其参数个数或参数的类型不同来区分它们,即构造函数的重载方法名称和类名称一致,包括大小写没有返回值类型的声明在一个类中允许方法同名(方法重载),要求参数不同:类型、个数、顺序构造器方法不能直接调用,只能通过new运算符间接调用public class B1{ public B1(){} public B1(原创 2021-01-13 23:03:14 · 211 阅读 · 0 评论 -
Java中的范围限定词
范围限定词private 私有的protected 受保护的默认(就是没有限定词、package限制不能写成default)public 公共的限定类public class A{//外部类 class B(){}//这个类定义在类A中,为内部类}外部的独立类上可以使用的限定词有public和默认两种;内部类可以只用4大范围线否定此种的任意一个在一个.java文件中可以定义无数个class,但是只能定义一个public class,而且要求文件名称和public clas原创 2021-01-12 22:38:28 · 738 阅读 · 3 评论 -
成员变量与局部变量的区别
成员变量与局部变量的区别成员变量定义在类中,整个类中都能访问,与具体所在的位置无关。局部变量定义在方法、语句、局部代码块中,旨在所属的区域有效,而且必须是先定义后使用,先赋初值后使用。public class Student{ public void who(){ return name; } private String name;//成员变量----属性 public void eat(){ String food="rice";//局部原创 2021-01-12 21:54:34 · 109 阅读 · 3 评论