- 博客(95)
- 收藏
- 关注
原创 java面试题(6)
1、以下代码输出的是: 1 2 3 4 5 6 7 8 9 10 11 public class SendValue{ public String str="6"; public static void main(String[] args) { ...
2018-12-31 14:42:29 390
原创 java面试题(5)
1、Java中只有整型才能使用的运算符为?A、*B、/C、%D、+答案是C只有%取余操作,只适用于整型。但其他的可以使用,但是结果不受预期的结果。2、下列不属于java语言鲁棒性特点的是A、java能检查程序在编译和运行时的错误B、java能运行虚拟机实现跨平台C、java自己操纵内存减少了内存出错的可能性D、java还实现了真数组,避免...
2018-12-30 22:27:43 660
原创 java面试题(4)
1、顺序执行下列程序语句后,则b的值是()String a="Hello";String b=a.substring(0,2);答案是Hesubstring 方法将返回一个包含从 start 到最后(不包含 end )的子字符串的字符串。2、下列哪个选项是Java调试器?如果编译器返回程序代码的错误,可以用它对程序进行调试。A、java.ex...
2018-12-29 14:06:38 223
原创 java面试题(3)
1、 默认值 取值范围 示例字节型 : 0 -2^7—-2^7-1 byte b=10;字符型 : ‘ \u0000′ 0—-2^16-1 char c=’c’ ;short : 0 -2^15—-2^15-1 short s=1...
2018-12-29 13:50:42 163
原创 java面试题(2)
1、下列程序的运行结果 1 2 3 4 5 6 7 8 9 10 11 12 public static void main(String args[]) { Thread t = new Thread() { public void ru...
2018-12-29 13:31:01 267
原创 final、finally、finalize的区别
1、final修饰符(关键字)。被final修饰的类,就意味着不能再派生出新的子类,不能作为父类而被子类继承。因此一个类不能既被abstract声明,又被final声明。将变量或方法声明为final,可以保证他们在使用的过程中不被修改。被声明为final的变量必须在声明时给出变量的初始值,而在以后的引用中只能读取。被final声明的方法也同样只能使用,即不能方法重写。2、finally是在异常...
2018-12-28 18:55:27 104
原创 java面试题(1)
1、final等同于private,这句话是错误的。private方法只可以在类的内部使用,在类外根本访问不到, 而final方法可以在类外访问,但是不可以重写该方法,就是说可以使用该方法的功能但是不可以改变其功能,这就是private方法和final方法的最大区别。private说的是访问修饰符,是一个访问权限的问题,final说的是这个方法不能被重写。2、下列属于容器的组件有()...
2018-12-28 18:52:14 222
原创 java的拆箱和装箱
什么是装箱?什么是拆箱?装箱:把基本类型用它们相应的引用类型包装起来,使其具有对象的性质。int包装成Integer、float包装成Float拆箱:和装箱相反,将引用类型的对象简化成值类型的数据。Integer a = 100; 这是自动装箱 (编译器调用的是static Integer valueOf(int i))int b = ne...
2018-12-28 18:20:13 97
原创 Servlet生命周期
加载—>实例化—>服务—>销毁。Servlet生命周期分为三个阶段:1:初始化阶段,调用init()方法 2:响应客户请求阶段,调用service()方法 3:终止阶段,调用destory()方法Servlet的生命周期指的是 Servlet从被Web服务器加载到它被销毁的整个生命过程。Web服务器加载Servlet:Web服务器启动后,它会根据每个工程的we...
2018-12-28 17:36:12 129
原创 java数据结构有哪些?
Java中有几种常用的数据结构,主要分为Collection和map两个主要接口(接口只提供方法,并不提供实现),而程序中最终使用的数据结构是继承自这些接口的数据结构类。Collection---->Collections Map----->SortedMap------>TreeMap Map------>HashMapColle...
2018-12-28 17:26:11 15951 1
原创 SSH框架
SSH是 struts+spring+hibernate的一个集成框架。 集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层。其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持,Spring做管理,管理struts和hibernate。业务流程:系统...
2018-12-26 12:03:52 137
原创 Spring(1)
1、AOP:面向切面编程,利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。主要的功能是:日志记录,性能统计,安全控制,事务处理,异常处理等等。AOP和OOP:OOP(面向对象编程)针对业务处理过程的实体及其属性和行为进行抽象封装,以获得更加清晰高效的逻辑单元划分。而AOP则是针对业务处理过程中的切面进行提取,...
2018-12-25 20:00:55 414
原创 《剑指Offer》代码的鲁棒性--链表中倒数第k个结点
时间限制:1秒 空间限制:32768K 热度指数:512101本题知识点: 链表题目描述输入一个链表,输出该链表中倒数第k个结点。/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/pu...
2018-12-25 19:17:49 99
原创 SpringMVC和Struts2的区别
(1)struts2是类级别的拦截,一个类对应一个request上下文,springMVC是方法级别的拦截,一个方法对应一个request上下文。(2)springMVC的入口是servlet,struts2的入口是filter(3)拦截器实现机制上,Struts2有以自己的interceptor机制,SpringMVC用的是独立的AOP方式,这样导致Struts2的配置文件量还是比Spr...
2018-12-25 19:09:20 121
原创 HTTP协议简介
HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,适用于万维网(WWW:World Wide Web)服务器传输超文本到本地浏览器的传送协议。 HTTP是一个基于TCP/IP通信协议来传递数据。 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。 ...
2018-12-25 13:52:34 224
原创 《剑指Offer》代码的完整性--调整数组顺序使奇数位于偶数前面
时间限制:1秒 空间限制:32768K 热度指数:366510本题知识点: 数组题目描述输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。思路:遍历数组中的所有数,判断为奇数的,添加到list中,然后再遍历数组中的所有数,为偶数的,加到list中,这样就实现了奇...
2018-12-25 08:58:53 88
原创 《剑指Offer》代码的完整性--数值的整数次方
时间限制:1秒 空间限制:32768K 热度指数:313563题目描述给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方public class Solution { public double Power(double base, int exponent) { double result = 0; ...
2018-12-24 21:43:38 100
原创 《剑指Offer》位运算--二进制中1的个数
时间限制:1秒 空间限制:32768K 热度指数:304381题目描述输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。知识点:1、计算机中的符号数有三种表示方法,即原码、反码和补码。三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位,三种表示方法各不相同。在计算机系统中,数值一律用补码来表示和存储。原因在于,使用补码,可以将符号...
2018-12-24 21:28:56 116
原创 《剑指Offer》递归和循环--矩形覆盖
时间限制:1秒 空间限制:32768K 热度指数:228315题目描述我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?思路:根据找规律得:n=1时,1种;n=2时,2种;n=3时,3种;n=4时,5种;观察得:n=1时,1种;n=2,2种;n>2时,f(n-1)+f(n-2)第一种方法:...
2018-12-24 19:46:20 117
原创 《剑指Offer》递归和循环--变态跳台阶
时间限制:1秒 空间限制:32768K 热度指数:253078本题知识点: Java工程师 C++工程师 iOS工程师 安卓工程师 运维工程师 前端工程师 算法工程师 PHP工程师 测试工程师 安全工程师 c#工程师 数据库工程师 大数据工程师 数据分析师 游戏工程师题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。...
2018-12-24 18:31:21 85
原创 《剑指Offer》递归和循环--跳台阶
时间限制:1秒 空间限制:32768K 热度指数:320390题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。思路:找规律的方法,f(1) = 1, f(2) = 2, f(3) = 3, f(4) = 5, 可以总结出f(n) = f(n-1) + f(n-2)的规律,但是为什么会出现这样的规律呢?假...
2018-12-24 16:30:10 102
原创 《剑指Offer》递归和循环--斐波那契数列
时间限制:1秒 空间限制:32768K 热度指数:415020题目描述大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39思路1:用递归public class Solution { public int Fibonacci(int n) { if(n == 0) ...
2018-12-23 21:41:08 115
原创 《剑指Offer》 查找和排序--旋转数组的最小数字
时间限制:3秒 空间限制:32768K 热度指数:437662本题知识点: 查找题目描述把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。这个题的关键是:非减...
2018-12-23 21:31:41 77
原创 《剑指Offer》栈和队列--用两个栈实现队列
时间限制:1秒 空间限制:32768K 热度指数:317529本题知识点: 队列 栈题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。思路:首先需要清楚的是,栈的特点是:先进后出;队列的特点是:先进先出举个例子,不失一般性,PUSH1,PUSH2,PUSH3,POP,POP,PUSH4,POP,PUSH5,POP,POP,该例子队列...
2018-12-23 20:55:23 96
原创 《剑指Offer》树--重建二叉树
时间限制:1秒 空间限制:32768K 热度指数:477379题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。思路:根据前序和中序生成一个二叉树的时候,首先确定的是,前序的第一个即为二叉树...
2018-12-23 20:21:54 100
原创 《剑指Offer》链表--从尾到头打印链表
时间限制:1秒 空间限制:32768K 热度指数:681780本题知识点: 链表题目描述输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。思路:从尾到头打印链表首先想到的是利用栈的性质:先进后出,在此注意,写完代码,一定要导Stack包/*** public class ListNode {* int val;* Lis...
2018-12-23 19:42:04 60
原创 《剑指Offer》 字符串--替换空格
时间限制:1秒 空间限制:32768K 热度指数:762376本题知识点: 字符串题目描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。方法1:public class Solution { public String replaceSpace(StringB...
2018-12-23 18:55:38 133
原创 《剑指Offer》数组--二维数组中的查找
时间限制:1秒 空间限制:32768K 热度指数:872538本题知识点: 查找题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。思路1:把每一行看成递增有序的数列,利用二分查找,通过遍历每一行得到答案,时间复杂度是nlogn...
2018-12-23 18:25:04 82
原创 谈谈final、finally、finalize的区别
(1)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承,因此,一个类既不能被声明为abstract,又被声明为final,将变量或方法声明为final,可以保证它们在使用中不被改变,其初始化可以在两个地方:一是其定义处,也就是说,在final变量定义时直接给其赋值;二是在构造函数中,这两个地方只能选其一,不能同时既在定义时给了值,又在构造函数中给另外的值,在以后的引用...
2018-12-23 14:32:18 1637
原创 逻辑运算符&、|、&&、||
以以下代码为例子:public class Test { public static void main(String[] args){ int m = 5, n = 5; if((m != 5) && (n++ == 5)){} //短路运算符,若第一个条件为假,后面的就不执行了 System.out.printl...
2018-12-23 14:20:55 1156 1
原创 i++与++i的区别
以以下代码为例:public class Test { public static void main(String[] args){ int i = 0; i = i++ + ++i; //0+2=2 int j = 0; j = ++j + j++ + j++ + j++; //1+1+...
2018-12-23 11:15:26 256
原创 十六进制转十进制
import java.util.Scanner;public class Main {public static void main(String[] args){Scanner scanner = new Scanner(System.in);String string = scanner.next();int len = string.length();int r_le...
2018-12-23 10:11:02 518
原创 数字组合问题(贪心算法)
设有N个正整数,现在需要你设计一个程序,使他们连接在一起成为最大的数字,例3个整数 12,456,342 很明显是45634212为最大,4个整数 342,45,7,98显然为98745342最大程序要求:输入整数N 接下来一行输入N个数字,最后一行输出最大的那个数字!思路:拿到这题目,看起要来也简单,看起来也难,简单在什么地方,简单在好像就是寻找哪个开头最大,然后连在一起就是了,难在如果...
2018-12-23 10:10:56 3239
原创 直角三角形
勾股定理,西方称为毕达哥拉斯定理,它所对应的三角形现在称为:直角三角形。 已知直角三角形的斜边是某个整数,并且要求另外两条边也必须是整数。 求满足这个条件的不同直角三角形的个数。【数据格式】输入一个整数 n (0<n<10000000) 表示直角三角形斜边的长度。要求输出一个整数,表示满足条件的直角三角形个数。例如,输入:5程序应该输出:1再例如,输入:100程序应该输出:2再例如...
2018-12-23 10:10:48 1030
原创 字符统计
问题描述 给定一个长度为n的字符串S,还有一个数字L,统计长度大于等于L的出现次数最多的子串(不同的出现可以相交),如果有多个,输出最长的,如果仍然有多个,输出第一次出现最早的。输入格式 第一行一个数字L。 第二行是字符串S。 L大于0,且不超过S的长度。输出格式 一行,题目要求的字符串。 输入样例1: 4 bbaabbaaaaa 输出样例1...
2018-12-23 10:10:29 1428
原创 大写转小写
import java.util.Scanner; public class Main {public static void main(String[] args){Scanner scanner = new Scanner(System.in);String s = scanner.next();char ch = s.charAt(0);if(ch >= ...
2018-12-23 10:10:19 1085
原创 2的次幂表示
问题描述 任何一个正整数都可以用2进制表示,例如:137的2进制表示为10001001。 将这种2进制表示写成2的次幂的和的形式,令次幂高的排在前面,可得到如下表达式:137=2^7+2^3+2^0 现在约定幂次用括号来表示,即a^b表示为a(b) 此时,137可表示为:2(7)+2(3)+2(0) 进一步:7=2^2+2+2^0 (2^1用2表示) 3=2+2^0 ...
2018-12-23 10:10:12 1355
原创 关联矩阵
问题描述 有一个n个结点m条边的有向图,请输出他的关联矩阵。输入格式 第一行两个整数n、m,表示图中结点和边的数目。n<=100,m<=1000。 接下来m行,每行两个整数a、b,表示图中有(a,b)边。 注意图中可能含有重边,但不会有自环。输出格式 输出该图的关联矩阵,注意请勿改变边和结点的顺序。样例输入5 91 23 11 5...
2018-12-23 10:10:05 1662
原创 寻找数组中最大值
import java.util.Scanner; public class Main{public static void main(String[] args){Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();int max = 0; //用来存储数组中...
2018-12-23 10:09:58 1219
原创 Torry的困惑
import java.util.Scanner;public class Main {public static void main(String[] args){Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();int count = 0;int k = 2;long result = ...
2018-12-23 10:09:41 164
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人