
Java
Jecretariat
多参考,多思考。
展开
-
反射如何破坏单例模式
反射如何破坏单例模式一个单例类:public class Singleton { private static Singleton instance = new Singleton(); private Singleton() {} public static Singleton getInstance() { return instance; }}通过反射破坏单例模式:public class Test { public st原创 2021-01-19 20:09:39 · 1380 阅读 · 0 评论 -
Java对二维数组排序
排序规则:首先按照每个一维数组第一个元素进行升序排序,若第一个元素相等,则按照第二个元素进行升序排序。Arrays.sort(a, new Comparator<int[]>() { @Override public int compare(int[] o1, int[] o2) { if (o1[0]==o2[0]) return o1[1]-o2[1]; return o1[0]-o2[0]; }});o1[x]-o2[x]:按照1->2的顺序表示进行升序排序;原创 2020-11-30 13:47:55 · 1481 阅读 · 0 评论 -
遍历HashMap
1、遍历Keyfor(String s:map.keySet()){ System.out.println("key : "+s+" value : "+map.get(s));}2、遍历Mapfor(Map.Entry<String, String> entry : map.entrySet()){ System.out.println("键 key :"+entry.getKey()+" 值value :"+entry.getValue());}...原创 2020-11-09 21:03:06 · 117 阅读 · 0 评论 -
java实现无序链表排序
import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;class Node { int val; Node next; public Node(int val) { this.val = val; }}class MyComparator{ public static Comparator getComparator() {原创 2020-08-11 18:49:28 · 609 阅读 · 0 评论 -
Java实现反转每对括号间的子串
题目描述:给出一个字符串 s(仅含有小写英文字母和括号)。请你按照从括号内到外的顺序,逐层反转每对匹配括号中的字符串,并返回最终的结果。注意,您的结果中不应包含任何括号。示例 1:输入:s = “(abcd)”输出:“dcba”示例 2:输入:s = “(u(love)i)”输出:“iloveu”示例 3:输入:s = “(ed(et(oc))el)”输出:“leetcode”示例 4:输入:s = “a(bcdefghijkl(mno)p)q”输出:“apmnolkjihgf原创 2020-08-09 11:24:07 · 846 阅读 · 0 评论 -
输出字符串的所有排列可能
//字符串的排列// 知识点:字符串、动态规划、递归// 输入一个字符串,按字典序打印出该字符串中字符的所有排列。// 例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。// 思路:回溯法,先固定第一个,然后将它与后面的不断交换,一直循环public class ArrangementOfStrings27 { public static void main(String[] args) { ArrangementOfStr原创 2020-08-02 16:34:34 · 856 阅读 · 0 评论 -
不用加减乘除做加法
知识点:进制转化要求:写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。思想:三步走策略。两个数相加分为 各(不是个)位相加 和 进位相加// 5的二进制是101,17 的二进制是10001。我们试着把计算分成三步:// 第一步各位相加但不计进位,得到的结果是10100 (最后一位两个数都是1,相加的结果是二进制的10。这一步不计进位,因此结果仍然是0);// 第二步记下进位,在这个例子中只在最后一位相加时产生-一个进位,结果是二进制的10;// 第三步把前两步的结果原创 2020-08-02 16:15:19 · 131 阅读 · 0 评论 -
多重背包问题java实现
动态规划思想import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); int N = input.nextInt();// 输入物品个数 int V = input.nextInt();// 输入背包容量数 int[]原创 2020-08-02 12:48:31 · 805 阅读 · 1 评论 -
String 和 new String()的区别
For ExampleString str1 = “ABC”String str2 = new String(“ABC”);String str1 = “ABC”; 可能创建一个对象或者不创建对象。如果"ABC" 这个字符串z在java String池中不存在,会在java String池中创建一个String str1= "ABC"的对象。然后把str1指向这个内存地址。之后用这种方式创建多少个值为"ABC"的字符串对象。始终只有一个内存地址被分配,之后都是String的copy。这种被称为‘字符原创 2020-07-31 23:18:11 · 219 阅读 · 0 评论 -
Java单链表的反转
节点的定义class Node { private int Data;// 数据域 private Node Next;// 指针域 public Node(int Data) { // super(); this.Data = Data; } public int getData() { return Data; } public void setData(int Data) { this.Data = Data; } public Node getNext() {原创 2020-07-25 11:03:56 · 242 阅读 · 0 评论 -
数据库基础面试题
1.InnoDB支持的索引算法是?A. B+树B. B-树C. B*树D. B/树正确答案 A2.MySQL如何修改一个表a的名字为bA. change table a to b;B. rename table a to b;C. update table a to b;D. alter table a to b;正确答案 B3.mysql shell如何查看服务器状态?A. show mysql status;B. show status;C. select status;原创 2020-07-23 18:01:52 · 397 阅读 · 0 评论 -
广联达范围攻击
题目描述: 在一个2D横版游戏中,所有的怪物都是在X轴上的,每个怪物有两个属性X和HP,分别代表怪物的位置和生命值。玩家控制的角色有一个AOE(范围攻击)技能,玩家每次释放技能可以选择一个位置x,技能会对[x-y,x+y]范围内的所有怪物造成1点伤害,请问,玩家最少需要使用多少次技能,才能杀死所有怪物,怪物血量清0即视为被杀死。输入描述输入第一行包含一个两个正整数n和y,分别表示怪物的数量和技能的范围。(1<=n<=100000)接下来有n行,每行有两个正整数x和hp分别表示一只怪物的位原创 2020-07-23 12:39:02 · 990 阅读 · 0 评论 -
赛码约德尔(志勋)测试
要求:将约德尔人的历史的每个阶段都用一个字符表达出来。(包括可写字符,不包括空格。)。然后将这个字符串转化为一个01串。转化规则是如果这个字符如果是字母或者数字,这个字符变为1,其它变为0。然后将这个01串和黑默丁格观测星空得到的01串做比较,得到一个相似率。相似率越高,则约德尔的未来越光明。// 输入// 每组输入数据为两行,第一行为有关约德尔人历史的字符串,第二行是黑默丁格观测星空得到的字符串。// (两个字符串的长度相等,字符串长度不小于1且不超过1000。)//输出// 输出一行,在原创 2020-07-23 00:08:07 · 143 阅读 · 0 评论 -
赛码反转数组
// 给定一个长度为n的整数数组a,元素均不相同,问数组是否存在这样一个片段,只将该片段翻转就可以使整个数组升序排列。// 其中数组片段[l,r]表示序列a[l], a[l+1], …, a[r]。原始数组为// a[1], a[2], …, a[l-2], a[l-1], a[l], a[l+1], …, a[r-1], a[r], a[r+1], a[r+2], …, a[n-1], a[n],// 将片段[l,r]反序后的数组是// a[1], a[2], …, a[l-2], a[l-1],原创 2020-07-22 23:06:53 · 264 阅读 · 0 评论 -
赛码赌神
要求:// 经过严密的计算,小赛买了一支股票,他知道从他买股票的那天开始,股票会有以下变化:第一天不变,以后涨一天,跌一天,涨两天,跌一天,// 涨三天,跌一天…依此类推。// 为方便计算,假设每次涨和跌皆为1,股票初始单价也为1,请计算买股票的第n天每股股票值多少钱?// 输入,包括多组数据; 每行输入一个n,1<=n<=10^9 。// 输出,请输出他每股股票多少钱,对于每组数据,输出一行。import java.util.*;public class Main2 {原创 2020-07-22 20:52:10 · 191 阅读 · 0 评论 -
序列化与反序列化实例
序列化与反序列化实例import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;import java.io.Serializable;public class Student implements Serializable{ priv原创 2020-05-14 09:46:38 · 290 阅读 · 0 评论 -
DEBUG [net.sf.ehcache.CacheManager@625732] - Update check failed:
在使用ehcache缓存时,报如下错误。DEBUG [net.sf.ehcache.CacheManager@625732] - Update check failed: java.io.IOException: Server returned HTTP response code: 403 for URL: http://www.terracotta.org/kit/reflector?pa...原创 2020-03-04 20:55:12 · 658 阅读 · 0 评论 -
java.io.IOException: Could not find resource config/SqlMapConfig.xml
在进行MyBatis测试时,出现上面错误。原因是:没有找到SqlMapConfig.xml该文件。解决思路:1首先检查该字符串和配置文件名是否一致。若一致,则说明是路径设置的问题。2若是路径的问题,有2种方式解决。1、将所有的配置文件转到src文件夹下,即类加载路径下。还要注意配置文件相互引用可能造成的错误。2、将原来存放配置文件的文件夹设置成源目录(与src的地位一样)。...原创 2020-03-02 21:24:40 · 744 阅读 · 0 评论 -
三线程打印ABC
建立三个线程,A线程打印10次A,B线程打印10次B,C线程打印10次C,要求线程同时运行,交替打印10次ABC。这个问题用**Object的wait(),notify()**就可以很方便的解决。package ljj.bj.test;/** * 三线程打印ABC */public class ThreeConcurrencyPrint implements Runnable {...原创 2020-02-27 15:21:32 · 218 阅读 · 0 评论 -
not found while looking for property:
在进行Hibernate配置时,开启服务器报上述错误。绝大部分的问题可能出在:实体类的属性配置出错。1、实体类(pojo)中你定义了某个属性,如“dateTime”。结果,在xxx.hbm.xml中配置时写成了"datatime";2、上述属性与数据库中已建库表中的字段对不上。如实体类及mapping关系中你都叫"dateTime“,但库表中你叫“datetime”...原创 2020-02-20 14:35:39 · 277 阅读 · 0 评论 -
The server time zone value '???ú±ê×??±??' is unrecognized or represents more than one time zone.
在进行SSH编程时,启动Tomcat时出现下面错误:Exception in thread “main” java.sql.SQLException:The server time zone value ‘???ú±ê×??±??’ is unrecognized or represents more than one time zone.You must configure either ...原创 2020-02-15 10:57:21 · 163 阅读 · 0 评论 -
Only a type can be imported. xxxx resolves to a package
在Web项目中,当你运行一个jsp文件时出现上述错误。一个可能的情况是:你虽然在Bulid Path中导入了该jsp文件所需的jar包,但是你并未在WEB-INF/lib文件夹中引入该jar包。jsp先被容器转译成servlet源代码,然后web容器将servlet源代码编译成.class 文件。如果不在WEB-INF/lib文件夹中引入jar包,.class就会找不到所需要的类,就会报标题那...原创 2019-11-23 16:17:21 · 2059 阅读 · 1 评论 -
调用静态工厂方法创建Bean
创建Bean的三种方式:调用构造器创建Bean调用静态工厂方法创建Bean调用实例工厂方法创建Bean静态工厂方法例子:1)接口,用于实例的实例public interface Being { public void testBeing();}2)接口的两个实现类,静态工厂方法会产生这两个实现类的实例import com.ljj.bj.service.Being;pu...原创 2019-10-24 19:23:02 · 379 阅读 · 0 评论 -
com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask@解决方案
在配置c3p0通过配置文件创建数据源对象时,报错信息如题。原因一:你的数据库各类信息是否正确,url,username,password是否正确。原因二:是否将必需的jar包都放进工程中原因三:你导入的mysql的jar包和你设置的驱动信息是否一致,若是5.x版本,是com.mysql.jdbc.Driver;6.x是com.mysql.cj.jdbc.Driver。这个应保持一致。原因...原创 2019-10-18 17:17:26 · 21290 阅读 · 7 评论 -
Maven项目不显示Maven Dependencies依赖
创建一个Maven项目,在pom中写了Dependencies依赖,但是没有出现Maven Dependencies这个包,如图所示这个:我的解决方案是:检查视图方式,看看是否是package explorer视图。依次点击:window->show view->other->java->package explorer刷新一下,或者重启一下Eclipse,...原创 2019-07-27 20:12:49 · 1045 阅读 · 0 评论 -
Servlet 数据库访问配置不成功的解决方案
1、在 java 项目中,只需要在 Eclipse 中引入 mysql-connector-java-xx.jar 就可以运行,但是在 Eclipse web 项目中,当执行 Class.forName(“com.mysql.jdbc.Driver”); 时,不会去查找驱动。此时应该将这个jar包 mysql-connector-java-xx.jar 拷贝到 tomcat 下 lib 目录(直接...原创 2019-07-03 14:35:46 · 816 阅读 · 0 评论 -
配置完servlet后,重启Tomcat不成功
可能的原因:访问路径配置和servlet类里的注解 —— @WebServlet("/HelloServlet")配置重了。若你这个servlet类名叫HelloForm.class,即 web.xml中,你的配置如下:然后在HelloForm.class这个servlet类中,你依照默认格式没有修改或者修改如下:因为上述两种配置都对应浏览器访问路径,所以这两种配一个就好了,不然路径...原创 2019-06-27 21:26:45 · 552 阅读 · 0 评论 -
JDBC异常:Exception in thread "main" java.lang.ExceptionInInitializerError 解决方法
一个可能的原因是把,properties文件放错了。这是正确的放置位置,正确时应该与包同级别,同时处于项目的子目录下这是错误的放置位置原创 2019-01-07 16:49:05 · 3630 阅读 · 1 评论