
Java基础
喝粥也会胖的唐僧
这个作者很懒,什么都没留下…
展开
-
Sync with Gradle for project ‘XXXX‘ failed: Connection timed out: connect
使用android studio同步项目,一直下载不了gradle-3.5.1.pom,每次都会解析阿里云的镜像后失败,跳转去了谷歌的dl.google.com结果因此会导致每次都会连接超时导致这个问题的原因是,https造成的,把https注释掉就会解决问题需要修改的文件路径:C:\Users\Administrator\.gradle\gradle.propertiessystemProp.http.proxyHost=127.0.0.1systemProp.http.prox.原创 2020-09-28 11:36:03 · 536 阅读 · 0 评论 -
Android逆向工程:将jar文件转成java文件
上一篇博文提到了,如何将一个apk转成jar文件,虽然jar文件我们可以使用jd-gui进行查看,但是保存成java文件的时候不是很方便,肯自己不会操作的缘故,这里还是使用一个jar包进行解决,这个工具包就叫做CFR使用起来很简单,前提是极其要安装java,毕竟是jar包具体的使用命令是:C:\Users\Administrator\Desktop\wx>java -jar c...原创 2020-03-31 22:19:55 · 4649 阅读 · 0 评论 -
Android逆向工程:利用enjarify转apk为jar
这个工具使用起来很简单首先需要去github下载,这里下载好了直接来取吧链接(g3na)然后我将文件拷贝到linux里面操作的,因为linux相对来说简单一些1)解压文件unzip enjarify-master.zip2)进去到enjarifycd enjarify3)下载一个apk文件,这里我是下载的消消乐将apk文件放在linux中4)将apk转成ja...原创 2020-03-31 18:37:43 · 1411 阅读 · 0 评论 -
No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
原因如图: 我用的1.7,因为之前习惯用1.8所以没有改过来解决:重新安装JRE1.7继续运行我的maven install还是报错:重新安装JDK,jre似乎没有,试一下jdk: 还是不行,仔细发现,编译器还没设置回1.7 发现还是不行更新一下maven项目,成功...原创 2018-11-10 16:49:05 · 485 阅读 · 0 评论 -
eclipse取消自动生成package-info.java
不知道从哪天开始,在eclipse中,新建package时,会自动生成一个package-info.java文件,特别烦人,还得手动删掉。 然后考虑能不能取消掉,因为以前是没有这样自动生成的原来是我自己不知道何时误勾选了这个:取消勾选即可解决 ...原创 2018-10-17 19:10:48 · 7226 阅读 · 0 评论 -
eclipse一键删除类中无用的import包
突然有这样一个需求,就是经常改完代码后,会存在大量多余的包(之前导入的包),虽然不会影响代码的运行,但始终看起来觉得多余,页面不美观,比如:虽然我这个多余的包不算多,但想到以后开发遇到大量代码的时候,如果一条一条的Ctrl+D,简直太麻烦了查资料说了三种方法: 试了一下,只有第一种可以用,试一下:可行 第二种:压根不存在这个选项卡第三种:这个...原创 2018-10-16 18:33:39 · 20351 阅读 · 4 评论 -
874. Walking Robot Simulation
题目描述:A robot on an infinite grid starts at point (0, 0) and faces north. The robot can receive one of three possible types of commands:-2: turn left 90 degrees -1: turn right 90 degrees 1 <...原创 2018-09-06 21:43:46 · 558 阅读 · 0 评论 -
在同project下一定不能建立同名的servlet
问题的由来,都是血的教训,之前建立java的class经常可以在不同包使用同名的class的java文件,因此在建立web project也没关注过这个问题,因此也就建立了这样的servlet文件,当然出现了严重的错误。在同一个web项目下,就算分别建立不同的包,包里面的servlet不能同名,因为一旦同名,就会非常尴尬,web项目下的web-root路径下的web-inf下的web.xml就...原创 2018-08-14 13:27:50 · 953 阅读 · 0 评论 -
solr启动报错
solr启动报错解压后进行立即,运行出错:./solr start*** [WARN] *** Your open file limit is currently 1024. It should be set to 65000 to avoid operational disruption. If you no longer wish to see this warning, ...原创 2019-04-16 16:53:15 · 7437 阅读 · 2 评论 -
java.lang.NoClassDefFoundError: com/fasterxml/jackson/annotation/JsonView
运行Jackson报错:Exception in thread "main" java.lang.NoClassDefFoundError:com/fasterxml/jackson/annotation/JsonView at com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector.<cl...原创 2019-04-13 20:49:42 · 5172 阅读 · 1 评论 -
jsoup学习(一)
一、准备<dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <version>1.7.3</version></dependency&g...原创 2019-04-13 20:59:46 · 623 阅读 · 0 评论 -
jsoup学习(二)
上一篇爬去的静态数据,这一篇爬去动态的ajax请求比如有这么一个需求,经常都会在网站上看到你是第几个访问者,我们能否爬去到这样的动态数据呢?其实这样的数据都是封装的ajax中的,比如一、准备<dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>j...原创 2019-04-13 21:06:47 · 457 阅读 · 0 评论 -
Missing artifact org.mybatis.generator:mybatis-generator:jar:1.3.5
在Maven中加入mybatis-generator出错按照GitHub上(https://github.com/mybatis/generator/releases)和一篇博客(https://www.cnblogs.com/fenglan/p/5956953.html)的配置文件写的,那个文章应该写错了导致我一直pom文件报错before: <dependency>...原创 2019-04-14 11:49:59 · 6626 阅读 · 1 评论 -
mybatis-generator的使用(Maven方式)
mybatis-generator可以帮助我们自动建立代码,这是根据数据库的字段,然后通过反射机制,自动生成mapper,dao,mapping文件,以后就可以解脱双手去写这些代码了这里先使用简单的方式(Maven方式)一、准备数据库字段二、在eclipse中建立一个Maven项目pom文件:<project xmlns="http://maven.apache....原创 2019-04-14 14:21:24 · 2057 阅读 · 0 评论 -
mybatis-generator的使用(插件方式)
1、准备将插件文件generator拷贝入Eclipse\dropins\下2、新建一个Maven项目不用管pom文件,因为我们手动引入插件了3、将这两个文件拷贝到resources下generatorConfig.properties文件:suppressAllComments=truedriverClass=com.mysql.jdbc.Driveru...原创 2019-04-14 17:32:15 · 620 阅读 · 0 评论 -
eclipse启动出错
最近学scala,下载了一个可以直接支持scala的eclipse来用,然后启动eclipse的时候出错了分析:看了很多网上解析,各种各样的都有,都没解决问题,最后还是看出位数不匹配看了一下jdk版本C:\Users\Administrator>java -versionjava version "1.8.0_201"Java(TM) SE Runtime Envi...原创 2019-05-30 00:21:05 · 880 阅读 · 0 评论 -
DecimalFormat
有的时候我们需要数字转换成字符串,而且要求转换成的字符串位数是相同的,假如说,我们需要将数字转换成6位的字符串,我们输入的数字很有可能只有一位数或者两位数三位数,如果简单的将数字直接拼接一个"",显然是达不到目的的,还好java中给我们提供了一个api ,那就是DecimalFormat。比如这个代码就可实现这样的功能:public static String format(...原创 2019-08-03 12:11:42 · 469 阅读 · 0 评论 -
网易游戏笔试题(2)
题目描述如下:现在你需要用一台奇怪的打字机书写一封书信。信的每行只能容纳宽度为100的字符,也就是说如果写下某个字符会导致行宽超过100,那么就要另起一行书写 信的内容由a-z的26个小写字母构成,而每个字母的宽度均会事先约定。例如字符宽度约定为[1,2,3,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],那么就代表'a'到'd'四个字母的宽...原创 2018-08-06 17:36:59 · 1450 阅读 · 0 评论 -
网易游戏笔试题(1)
题目描述:小明是幼儿园的一名老师。某天幼儿园园长给小朋友们每人发一颗糖果,小朋友们拿到后发现有一些同学拿到的糖果颜色和自己相同,有一些同学糖果颜色和自己不同。 假定每个小朋友只知道有多少同学和自己拿到了相同颜色的糖果。 上课后,有一部分小朋友兴奋的把这一结果告诉小明老师,并让小明老师猜一猜,最少有多少同学拿到了糖果。 例如有三个小朋友告诉小明老师这一结果如下: 其中第一个小朋友发现...原创 2018-08-06 16:48:59 · 1933 阅读 · 0 评论 -
统计工作空间中的Java代码的行数
我们现在有这样一个需求,统计出eclipse的工作空间中java文件的中java代码的总行数。考虑的思路如下:首先我们需要将目录里的文件全找出来,然后过滤出java文件。再按行读入文件,每读一行计数一次。对于找文件,我们构造了一个方法Num,使用递归方法,找出所有的文件。详细代码如下所示:package Demo;import java.io.BufferedReader;...原创 2018-07-24 18:20:40 · 696 阅读 · 0 评论 -
翻转数列
问题的描述:小Q定义了一种数列称为翻转数列:给定整数n和m, 满足n能被2m整除。对于一串连续递增整数数列1, 2, 3, 4..., 每隔m个符号翻转一次, 最初符号为'-';。例如n = 8, m = 2, 数列就是: -1, -2, +3, +4, -5, -6, +7, +8.而n = 4, m = 1, 数列就是: -1, +2, -3, + 4.小Q现在希望你能帮他算算前n...原创 2018-07-24 22:43:36 · 1810 阅读 · 0 评论 -
吃最多巧克力问题的Java实现
问题的描述: 小Q的父母要出差N天,走之前给小Q留下了M块巧克力。小Q决定每天吃的巧克力数量不少于前一天吃的一半,但是他又不想在父母回来之前的某一天没有巧克力吃,请问他第一天最多能吃多少块巧克力 思路很简单,为了保证最后一天有巧克力吃,小Q最后一天吃一个能保证第一天吃最多,并且题目中给出:小Q决定每天吃的巧克力数量不少于前一天吃的一半,要想第一天最多,就用1/2最为合适,详细...原创 2018-07-24 23:18:58 · 1164 阅读 · 0 评论 -
字符串链Java实现
问题描述:牛牛很喜欢玩接龙游戏,一天他突发奇想,发明了一种叫做“字符串链”的游戏。 这个游戏的规则是这样的,给出3个字符串A,B,C,如果它们满足以下两个条件,那么就可以构成一个“字符串链”: 1.A的最后一个字母和B的第一个字母相同; 2.B的最后一个字母和C的第一个字母相同。 现在牛牛给出了3个字符串A,B,C,希望你能判断这3个字符串能否构成一个“字符串链”,若能则输出“Y...原创 2018-07-25 19:24:49 · 628 阅读 · 0 评论 -
序列最小操作次数的Java实现
问题的描述:有一个长度为N的序列。一开始,这个序列是1, 2, 3,... n - 1, n的一个排列。 对这个序列,可以进行如下的操作: 每次选择序列中k个连续的数字,然后用这k个数字中最小的数字替换这k个数字中的每个数字。 我们希望进行了若干次操作后,序列中的每个数字都相等。请你找出需要操作的最少次数。 这个问题,我们可以发现。我们首先操作最前面的数,然后第一个数作为下一次...原创 2018-07-25 20:21:19 · 2421 阅读 · 0 评论 -
Java中new出来的算是对象吗?
如题,一直有个问题困惑着我,基本类型中我们可以这样定义对象(以int为例):int a; 而引用类型却是只能new出来的,比如这样的:Human xiaoming=new Human(); 问题来了,这里的xiaoming算是对象吗?如果说不是,那不是说好的万物皆对象该怎么解释,它不是Human类的一个实例吗?若是对象,为何跟基本类型定义的对象有很大的区别?...原创 2018-07-28 23:59:10 · 4597 阅读 · 2 评论 -
Java构造代码块的使用
在Java中,代码块{}分为好几种,其中一种就是构造代码块,何为构造代码块呢?简单来说就是用{}包起来的代码片段,在创建对象时会被调用,每次创建对象时都会被调用。 在刷题的时候,发现有这样一种用法:object a=new object(){一个构造方法}; 可以看到, 我们在new对象的时候,没有立即用“;”结束,而是在构造代码块中使用了一个构造方法。问题来了...原创 2018-07-29 13:11:15 · 1672 阅读 · 0 评论 -
静态代码块与非静态代码块的区别(Java)
静态代码块是以static修饰的代码块,反之没有用static修饰的代码块为非静态代码块,如下所示:静态代码块:static{若干代码}非静态代码块:{若干代码}它们之间的区别主要如下:静态代码块在虚拟机加载类的时候就执行(只执行一次),而非静态代码块每一次new的时候都会执行一次。 由于静态代码块在虚拟机加载类的时候就执行,因此在非静态代码...原创 2018-07-29 13:46:15 · 4332 阅读 · 0 评论 -
设计模式之Adapter模式
Adapter模式又称为适配器模式,顾名思义,适配器的作用就是作为“适配器”,将源转换成目标,生活中最常见的“适配”是充电的操作。适配器主要分为两种:类适配器和对象适配器。我们从这两方面进行简析:类适配器 类适配器主要是运用继承的思想,拿手机充电为例,我们手机的接口(interface)是3.7V左右,但我们国家的生活电源是220V,我们的目标是要达到3.7V,...原创 2018-07-29 22:47:37 · 710 阅读 · 0 评论 -
用数组实现一个栈结构
栈在计算机中是很常见的,栈到底是什么呢?用官方的话说栈(Stack) 类表示后进先出(LIFO)的对象堆栈。通俗的讲栈相当于是一个容器,就我们生活中而言,我们可以在容器中装东西,也可以从中取出我们想要的物品。我们可以形象地画个示意图,如下所示: 假如,我们有几个(编号为1、2、3、4、5、6、7)物品按照如图装入容器中,顺序如图所示,假如我们要取出来,顺序一定是倒着的(即:7...原创 2018-07-21 20:31:51 · 13962 阅读 · 0 评论 -
用节点实现一个栈结构(stack)
前一篇文章用了数组对栈进行了简单地实现,本文拟使用linkedList进行实现。在java的connection中,有一个linkedlist子类,俗称为链表,linkedlist,节点Node在java中是这样定义的:Private static class Node<E>{E item;Node<E> next;Node<E> perv...原创 2018-07-21 20:41:40 · 980 阅读 · 0 评论 -
Iterator模式的java小实例(数组版)
GoF对于设计模式的24种模式之一,就有Iterator模式,就字面意思而言就是迭代器,可以理解成循环。这里有一个实例进行了试验,是做几本书放书架的实现,我们可以想象,如果我们手里有N本书,需要放在书架上,一本接着一本进行放,我们的行为是不断重复的,可以考虑进行循环操作。虽然说java带有迭代器的包,但是本实例是想用迭代的原理进行实现,肯定不能直接使用迭代器,不然就没了实际价值。 ...原创 2018-07-26 22:16:24 · 561 阅读 · 0 评论 -
比较器Comparator的底层结构浅谈
查API可知,接口 Comparator<T>存在于java.util包中,可以知道此接口所处的包是非常实用,我们的比较器见名知意,肯定是用于比较的,在Java1.6的API中有这么一句话:public interface Comparator<T>强行对某个collection 进行整体排序 的比较函数,这句话读起来有点绕口,但我们可以知道这个接口是针对于co...原创 2018-07-22 13:14:57 · 1833 阅读 · 0 评论 -
1个汉字的字节数真是2吗?
问题缘由是最近做了一个简单的试验,无意间发现并不是这样的。先附上代码,如下:public class ChineseBytes { public static void main(String[] args) { String str=new String("你好,世界。"); System.out.print("+"); ...原创 2018-07-30 16:19:08 · 1694 阅读 · 0 评论 -
猴子选大王---boolean数组的实现
问题的描述:15个猴子围成一圈选大王, 依次1-7循环报数, 报到7的猴子被淘汰, 直到最后一只猴子成为大王。 问: 哪只猴子会成为大王?本文尝试用boolean数组进行实现,代码如下所示:package UNI;import java.util.Arrays;public class monkey { public static void main(String[] args...原创 2018-07-22 16:52:18 · 926 阅读 · 0 评论 -
Template Method模式
我们生活中存在着各种模板,比如简历模板、作文模板,模板共性就是将框架固定,具体需要的内容我们需要的时候在进行补充。Template Method模式也是这样,首先定义一个抽象类,然后在这类中定义一个抽象方法,并将里面的抽象方法再在里面作为一个方法(可以理解为实例化,但实际上不是实例化,只是将抽象方法组装成一个固定框架),比如这样: 在抽象类A中,有个方法B3,虽然B3不是抽象...原创 2018-07-30 18:33:25 · 460 阅读 · 0 评论 -
连续子数组的最大和Java实现
问题描述: 一个数组有 N 个元素,求连续子数组的最大和。 例如:[-1,2,1],和最大的连续子数组为[2,1],其和为 3 本文采用的是数组,利用等差数列进行求和,代码如下:package series00;import java.util.Arrays;import java.util.Scanner;public class series1 {pub...原创 2018-08-09 11:30:57 · 1638 阅读 · 0 评论 -
螺旋填数Java实现
问题描述:螺旋填数.读入两个整数m,n, 输出一个m行n列的矩阵, 这个矩阵是1~m*n这些自然数按照右、 下、 左、 上螺旋填入的结果。例如读入数字4,5, 则输出结果为:1 2 3 4 514 15 16 17 613 20 19 18 712 11 10 9 8 本文定义了四个...原创 2018-07-23 22:46:18 · 1617 阅读 · 0 评论