中软国际Java笔试题
- 格式:doc
- 大小:47.00 KB
- 文档页数:5
中软国际校园招聘笔试试题考试范围:1.逻辑推理题(共20分)2.开发技术题(共60分)3.软件工程知识题(共20分)考试要求:1.考试时间为60分钟,每个人独立完成考试2.须在“研发技术方向”中勾选Java或C#,并解答对应语言试题3.答案写在答题纸上,不允许直接在卷面上答题4.考试完毕,试卷和答题纸一并收回试题:1. 逻辑推理(1~10题每题2分,共20分)1.一位教育工作者撰文表达了她对电子游戏给青少年带来的危害的焦虑之情。
她认为电子游戏就像一头怪兽,贪婪、无情地剥夺青少年的学习和与社会交流的时间。
以下哪项不成为支持以上观点的理由?()A.青少年玩电子游戏,上课时无精打采。
B.青少年玩电子游戏,作业错误明显增多。
C.青少年玩电子游戏,不愿与家长交谈。
D.青少年玩电子游戏,花费了家里的资金。
2.桌子上有4个杯子,每个杯子上写着一句话:第一个杯子:“所有的杯子中都有水果糖”;第二个杯子:“本杯中有苹果”;第三个杯子:“本杯中没有巧克力”;第四个杯子:“有些杯子中没有水果糖”。
如果其中只有一句真话,那么以下哪项为真?()A.所有的杯子中都有水果糖。
B.所有的杯子中都没有水果糖。
C.所有的杯子中都没有苹果。
D.第三个杯子中有巧克力。
3.鲁讯的著作不是一天能读完的,《狂人日记》是鲁迅的著作,因此,《狂人日记》不是一天能读完的。
下列哪项最为恰当地指出了上述推理的逻辑错误?()A.偷换概念B.自相矛盾C.以偏概全D.倒置因果4.面试在求职过程中非常重要。
经过面试,如果应聘者的个性不适合待聘工作的要求,则不可能被录用。
以上论断是建立在哪项假设基础上?()A.必须经过面试才能取得工作,这是工商界的规矩。
B.只要与面试主持人关系好,就能被聘用。
C.面试主持者能够准确地分辨出哪些个性是工作所需要的。
D.面试的唯一目的就是测试应聘者的个性。
5.所有爱斯基摩土著人都是穿黑衣服的;所有的北婆罗洲土著人都是穿白衣服的;没有穿白衣服又穿黑衣服的人;H是穿白衣服的。
中软国际笔试题及答案一、选择题(每题2分,共10分)1. 在Java中,下列哪个关键字用于定义一个接口?A. classB. interfaceC. abstractD. extends答案:B2. 下列哪个选项是JavaScript中声明变量的正确方式?A. var name = "Kimi";B. int name = "Kimi";C. let name = "Kimi";D. all of the above答案:D3. 在MySQL中,用于添加新数据行的SQL语句是?A. SELECTB. INSERTC. UPDATED. DELETE答案:B4. 在HTML中,用于定义最重要的标题的标签是?A. <h1>B. <h6>C. <title>D. <header>答案:A5. 在CSS中,用于选择类名为“example”的所有元素的语法是?A. #exampleB. .exampleC. exampleD. *.example答案:B二、填空题(每题3分,共15分)1. 在Java中,一个类可以继承另一个类的属性和方法,这称为______。
答案:继承2. 在JavaScript中,用于定义函数的关键字是______。
答案:function3. 在MySQL中,用于创建数据库的SQL语句是______。
答案:CREATE DATABASE4. 在HTML中,用于定义文档的头部的标签是______。
答案:<head>5. 在CSS中,用于设置字体颜色的属性是______。
答案:color三、简答题(每题5分,共20分)1. 请简述Java中接口和抽象类的区别。
答案:接口是一种完全抽象的结构,它不能包含实现(Java 8之前),而抽象类可以包含实现。
接口可以被类实现,而抽象类可以被类继承。
中软国际Java程序员笔试题1.谈谈final,fi nllya,fi alnie的z别区。
2.Anoymouns nner IlCsa s匿名内部类)( 是可以否xeetnds继(承)其它类是,可否i以mplements实现)(niterfae(c口接?)3St.aictN este dlaCs 和sInn e rlCsas的不同说,得越多好(面试越有的题笼统很。
)4.&和&&区的。
别5.HasMaphHa和htsbla的区e别。
6.oClelciont和 Colectionls的别区。
7.什么时用候asest。
r.8CG是么什 ?什么为要有G?C.S9rtngis = n ewSt inr(gx"z")y;创建了几个tSirg Objnce? t10.aMh.tounr(11d.5)等多於?少Mat .hounrd-11(5).於等少? 多11.sorth 1 s 1= s1;= 1s+ 1; 什么错? 有sorht s1= ; 1s1+ =1 有;什错么?2.s1leep) 和(wait ) 有什(区别么?31.组有没数有lengt(h)个这法? 方Srtni有没gle有gtn()h个这方?法4.1vOeroal和Overrdide区别。
的vOrloadede的方法否可是改以返回值的类变型?1.S5et里的元是不能重复素,的那么什用么法来方区重复分与否? 是用呢=还是eq=ula(s) 它们有何区??别1.6给我一你个常最见的run到tie mexepciton。
17.rrer和eoceptxon有什么i区别?81L.it, Sst, Mae是p继否自C承olleciot接口n?19.asbtrcat lcas和isternfcae有什区么?别20接.口是否可继承口接抽象类是?否可实(现iplmement)s口?接抽类象是可继承实否类体(oncretec cassl?)2.构1器造Cnstrucotr是否可o被ovrrede?i22.一个线当程进入个对象一的个一sncyhrnozied法方,其后它线程否可进入是对象的其此它方法23.?程题:编写一Si个glnetn出来。
中软java笔试题答案一、选择题1. 下列关于Java语言特点的描述,哪项是不正确的?A. 面向对象B. 与平台无关C. 支持多线程D. 支持自动垃圾回收答案:以上选项均正确。
2. Java中,用于定义一个类必须使用的关键字是什么?A. classB. interfaceC. publicD. static答案:A3. 下列哪个选项是Java语言中的保留字?A. runB. ifC. SystemD. myMethod答案:B4. 在Java中,如何正确定义一个字符串变量并初始化?A. String str = "Hello, World!";B. string str = "Hello, World!";C. Str str = "Hello, World!";D. string Str = "Hello, World!";答案:A5. Java中的异常处理是通过哪两个关键字实现的?A. try-catchB. catch-tryC. throw-throwsD. try-finally答案:A6. 在Java中,下列哪个类是所有其他类的超类?A. ObjectB. ClassC. SystemD. Thread答案:A7. 下列关于Java集合框架的描述,哪项是正确的?A. Collection是列表的子接口。
B. Map是集合的一种实现。
C. Set是Map的一种实现。
D. List是集合的一种实现。
答案:D8. 在Java中,如何创建一个线程?A. 实现Runnable接口。
B. 继承Thread类。
C. 实现Thread类。
D. 调用System.createThread()。
答案:A和B9. 下列哪个选项是Java中的输入输出(I/O)流的基础类?A. InputStreamB. OutputStreamC. FileReaderD. BufferedWriter答案:A和B10. 在Java中,final关键字的使用目的是什么?A. 声明常量B. 限制方法重写C. 限制变量赋值D. 限制继承答案:A和C二、填空题1. 在Java中,使用______关键字可以将类、方法或变量声明为公开的。
无锡中软国际有限公司笔试题(JavaSE)(本卷总分100分,60分及格,时间120分钟)一,选择题(每小题2分,共20题,总计40分)1. 下面哪些是合法的标识符?()A. $personsB. TwoUsersC. *pointD. thisE. _endline2. 下面程序运行的结果是()class Example{public static void main(String[] args){int i = 45678;int j = ~i;System.out.println(j);}}A.编译错误B.输出45677C.输出-45677D.输出 -456793.下面程序运行的结果是()public class Example{public static void main(String[] args){int i = 100;switch(i){case 100:System.out.print(i);case 200:System.out.print(i);case 300:System.out.print(i);}}}A.无任何输出B.编译错误C.输出100100100D.输出1004. 哪些不是Java关键字? ( )A. TRUEB. sizeofC. constD. superE. void5.下面程序运行的结果是()class Example{public static void main(String[] args){int x;double y = -10.9;x=(int)y;System.out.print(x + “”);y = 10.9;x = (int)y;System.out.println(x);}}A.-11 10B.-11 11C.-10 10D.-10 116.下面哪个方法可以通知Java虚拟机调用垃圾回收器来回收已废弃对象?()A.System.gc() B.Runtime.gc() C.System.freeMemory D.Runtime.getRuntime().growHeap()7. 下面程序运行的结果是()public class Example{int x = 12;public void method(int x){x += x;System.out.println(x);}public static void mian(String[] args){Example t = new Example();t.method(5);}}A.5B.10C.12D.17E.248. 下面程序运行的结果是()class Base{private void amethod(int iBase){System.out.println(“Base.amethod”);}}class Example extends Base{public static void main(String[] args){Example o = new Example();int iBase = 0;o.amethod(iBase);}public void amethod(int iover){System.out.println(“Example.amethod”);}}这里的构造器是私有化的,而且子类重构了父类的方法。
可编辑修改精选全文完整版中软国际校园招聘笔试题目(测试)姓名:学校:手机:邮箱:专业:时间:一小时Part 1: Common understanding1. 判断题: 判断题(每题1分,12 分,正确的√,错误的╳)1) 软件测试的目的是尽可能多的找出软件的缺陷。
()2) Beta测试是验收测试的一种。
()3) 验收测试是由最终用户来实施的。
()4) 项目立项前测试人员不需要提交任何工件。
()5) 单元能发现约80%的软件缺陷。
()6) 代码评审是检查源代码是否达到模块设计的要求。
()7) 自底向上集成需要测试员编写驱动程序。
()8) 负载测试是验证要检验的系统的能力最高能达到什么程度。
()9) 测试人员要坚持原则,缺陷未修复完坚决不予通过。
()10) 代码评审员一般由测试员担任。
()11) 我们可以人为的使得软件不存在配置问题。
()12) 集成测试计划在需求分析阶段末提交。
()2. 测试案例: 一个程序实现如下功能, 输入a,b,c,如果这三个数满足三角形的条件,则计算三角形的周长,否则输出提示错误. 然后判断三角形是等腰三角形还是等边三角形, 若是等腰三角形则打印输出等腰三角形, 若是等边三角形则打印输出等边三角形, 否则退出. 请给出程序流程及控制流程,测试路径. 试举一个测试用例.答案: 编程思路题, 流程图的思路如下:1) 先判断输入的三个数据有效性, 比如负数, 或者02) 判断输入的三个数据是否能构成一个三角形, 也就是a+b>c, a+c>b, 如果不是题诗错误3) a, b对比, 如果相等, 跟c对比, 如果都相等, 打印出等边三角形如果不相等, 再分别拿b, a与c对比, 如果有一个相等打印等腰三角形, 如果不相等退出测试思路: 等价类划分, 分别为边长无效数据的测试用例, 无法构成三角形的数据,即a+b<c的数据输入, 普通三角形的数据输入, 等腰三角形的数据输入, 等边三角形的数据输入边界值法, 对大数据的运算能力等3. 问答题: SIM卡是否支持热插拔?4. 问答题: 请简述APN的全称和作用。
一、选择题(不定项选择,每题2分,共70分)1. 在Java中,定义变量的前面加上( A ),那便是说,这个变量一旦初始化,其值就不可被更改。
A finalB finallyC finalizeD const2. 如下Java代码片段,其运行结果是( A )。
public class Test{public static void main(String[] args){int x=3,y=4;x=(y<x++)?1:0;System.out.println(x);}}A 0B 1C 3D 43. 在Tomcat中部署Web应用程序,正确的步骤顺序是( B )。
(1)将创建的页面复制到应用目录下。
(2)创建应用页面。
(3)在Tomcat目录中的webapps目录下创建应用文件目录,并遵循Web应用目录的结构。
(4)启动Tomcat,在浏览器的地址栏中访问。
A (4)(3)(2)(1)B (2)(3)(1)(4)C (2)(3)(4)(1)D (1)(3)(2)(1)4. 以下JSP代码,最后运行的结果是( B )。
<%for(int i=0;i<5;i++){out.println(“*”);}%>A 编译错误,无法运行。
B *****C *****D 可以运行,但无输出效果。
5. 假设下列选项的两个方法都属于同一个类,能正确构成方法重载的是()。
A public void myfunction(){…}和public void myfunction(String str){…}B public String myfunction(String str){…}和public void myfunction(String strType){…}C public void myfunction1(String str){…}和public void myfunction2(String str){…}D public void myfunction(String str){…}和public void myfunction(String str,int num){…}6. 下列关于java.util.ArrayList的说法中不正确的是()。
中软国际校园招聘笔试试题考试范围:1.逻辑推理题(10题,共30分)2.英语能力题(5题,共10分)3.基础技术题(10题,5个选择,5个填空,共30分)4.专业技术题(分Java、.NET、C/C++、测试四个技术方向,每个方向10题30分)考试要求:1.考试时间为90分钟,每个人独立、闭卷完成考试2.请将答案写在答题纸上,不允许直接在卷面上答题3.选择题除非在题目中说明,否则都是单选题。
多选题少选、错选均不给分4.请在答题纸“技术方向”中勾选相应技术领域,解答试卷“专业技术”部分的对应试题。
请至少选择一个方向作答,也可以回答其它方向题目5.考试完毕,试卷和答题纸一并收回试题:1. 逻辑推理(每题3分,共30分)1.选出以下最合适的选项完成句子:在最近召开的关于北海环境污染问题的会议上,大多数与会国都同意对流入北海的水质采取统一的质量控制,不管环境污染是否是因为某一特定流入源造成的。
当然,为了避免过分僵化的控制,A.采用的任何统一控制办法都必须施行不误。
B.受控制的任何物质必须是确实产生环境危害的。
C.那些同意统一控制的国家是那些排放量很大的国家。
D.那些将被控制的污染物质,目前在北海已经有了。
2.“有些好货不便宜,因此,便宜不都是好货。
”与以下列哪项推理作类比说明以上推理不成立?A.湖南人不都爱吃辣椒,因此,有些爱吃辣椒的不是湖南人。
B.有些人不自私,因此,人并不自私。
C.有些南方人不是广东人,因此,广东人不都是南方人。
D.金属都导电,因此,导电的都是金属。
3.观察下列数列的规律,然后从四个供选择的选项中选出最恰当的一项填入括号中:1 4 14 42 ( ) 210A.70 B.84 C.105 D.1404.某校以年级为单位,把学生的成绩分为优、良、中、差四等。
在一学年中,各门考试分前10%的为优;后30%为差,其余的为良和中。
在上一学年中,高二年级成绩为优的学生多于高一年级成绩为优的学生。
一、选择题。
1.编译Java 源程序文件产生的字节码文件的扩展名为(b)。
A、javaB、classC、htmlD、exe 2.main方法是Java程序执行的入口点,关于main 方法的方法头以下哪项是合法的(b)?A、public static void main()B、public static void main(String args[] )C、public static int main(String [] arg )D、public void main(String arg[] )3.为AB类的一个无形式参数无返回值的方法method 书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(a)。
A、static void method( )B、public void method( )C、final void method( )D、abstract void method( )4.下列哪个是合法的Java标识符?(bc)A、Tree&GlassesB、FirstJavaAppletC、_$theLastOneD、273.55.Java源程序的主类是指包含有(a)方法的类。
A、main方法B、toString方法C、init方法D、actionPerfromed方法8.若a的值为3时,下列程序段被执行后,c的值是多少?(c)c = 1;if ( a>0 ) if ( a>3 ) c = 2; else c = 3; else c = 4;A、1B、2C、3D、410.对于构造函数,下列叙述不正确的是(b )。
A、构造函数是类的一种特殊函数,它的方法名必须与类名相同。
B、构造函数的返回类型只能是void型。
C、构造函数的主要作用是完成对类的对象的初始化工作。
D、一般在创建新对象时,系统会自动调用构造函数。
11.下面的是关于类及其修饰符的一些描述,正确的是:(ac )。
1.选择题(3′×10)(1)在java中,100.0 * 0.6 结果等于多少?dA、60.0004B、60C、60.00D、60.0(2)int a = 'A',请问System.out.println(a)打印出什么?aA、65B、AC、aD、97(3)System.out.println(Integer.parseInt("+1"))这句话执行会出现什么异常?aA、NumberFormatExceptionB、NullPointException(4)jsp如何获得客户端的IP地址?aA、request.getRemoteAddr()B、Request.ServerVariables("REMOTE_ADDR")(5)String a=new String("foo");String b=new String("foo");请问System.out.println(a1= =b1)打印出什么?bA、trueB、falseC、1D、0(6)Math.round(11.5)的值是多少?cA、11B、11.5C、12D、 12.0(7)请问如下哪个方法可以将MenuBar加入Frame中?bA、setMenu()B、setMenuBar()C、add()D、addMenuBar()(8)Which of the following lines of code will compile without error?(多选)bcA、int i=0;if (i) {System.out.println(“Hi”);}B.boolean b=true;boolean b2=true;if(b= =b2) {System.out.println(“So true”);}C.int i=1;int j=2;if(i==1|| j==2) System.out.println(“OK”);D.int i=1;int j=2;if (i==1 &| j==2) System.out.print ln(“OK”);(9)Jsp路径太深文件名太长就无法读取文件,jsp路径最大长度是多少?bA、127B、255C、512D、1024(10) Consider the following code:(多选) C D EInteger s = new Integer(9);Integer t = new Integer(9);Long u = new Long(9);Which test would return true?A、(s==u)B、(s==t)C、(s.equals(t))D、(s.equals(9))E、(s.equals(new Integer(9))2.填空题(4′×5,每题4′)(1) String s = "Hello";String s1 = s;s = s + " world!";请问s的值是____Hello Would!_ ________,s1的值是___Hello_ ________。
Java程序员笔试题1.谈谈final, finally, finalize的区别。
final—修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。
因此一个类不能既被声明为 abstract的,又被声明为final的。
将变量或方法声明为final,可以保证它们在使用中不被改变。
被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。
被声明为final的方法也同样只能使用,不能重载。
finally—再异常处理时提供 finally 块来执行任何清除操作。
如果抛出一个异常,那么相匹配的 catch 子句就会执行,然后控制就会进入 finally 块(如果有的话)。
finalize—方法名。
Java 技术允许使用 finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。
这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。
它是在 Object 类中定义的,因此所有的类都继承了它。
子类覆盖 finalize() 方法以整理系统资源或者执行其他清理工作。
finalize() 方法是在垃圾收集器删除对象之前对这个对象调用的。
2.Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?3.Static Nested Class 和 Inner Class的不同,说得越多越好(面试题有的很笼统)。
Nested Class (一般是C++的说法),Inner Class (一般是JAVA的说法)。
Java内部类与C++嵌套类最大的不同就在于是否有指向外部的引用上。
注:静态内部类(Inner Class)意味着1 创建一个static内部类的对象,不需要一个外部类对象2 不能从一个static内部类的一个对象访问一个外部类对象Anonymous Inner Class (匿名内部类)是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?Inner Class(内部类)定义在类中的类。
Nested Class(嵌套类)是静态(static)内部类。
1. 要创建嵌套类的对象,并不需要其外围类的对象。
2. 不能从嵌套类的对象中访问非静态的外围类对象。
Anonymous Inner Class (匿名内部类)匿名的内部类是没有名字的内部类。
匿名的内部类不能extends(继承)其它类,但一个内部类可以作为一个接口,由另一个内部类实现。
嵌套类可以作为接口的内部类。
正常情况下,你不能在接口内部放置任何代码,但嵌套类可以作为接口的一部分,因为它是static 的。
只是将嵌套类置于接口的命名空间内,这并不违反接口的规则。
4.&和&&的区别。
& 是两个数相与,是运算符&&是连接两个条件表达式的,两个条件表达式都为真时,整个才为真5.HashMap和Hashtable的区别。
1 HashMap不是线程安全的hastmap是一个接口是map接口的子接口,是将键映射到值的对象,其中键和值都是对象,并且不能包含重复键,但可以包含重复值。
HashMap允许null key和null value,而hashtable不允许。
2 HashTable是线程安全的一个Collection。
HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,效率上可能高于Hashtable。
HashMap允许将null作为一个entry的key或者value,而Hashtable不允许。
HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey。
因为contains方法容易让人引起误解。
Hashtable继承自Dictionary类,而HashMap是Java1.2引进的Map interface的一个实现。
最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在多个线程访问Hashtable时,不需要自己为它的方法实现同步,而HashMap 就必须为之提供外同步。
Hashtable和HashMap采用的hash/rehash算法都大概一样,所以性能不会有很大的差异。
6.Collection 和 Collections的区别。
Collections是个java.util下的类,它包含有各种有关集合操作的静态方法。
Collection是个java.util下的接口,它是各种集合结构的父接口。
List, Set, Map是否继承自Collection接口? List,Set是 Map不是ArrayList和Vector的区别。
一.同步性:Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步的二.数据增长:当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半7.什么时候用assert。
assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。
在实现中,assertion就是在程序中的一条语句,它对一个boolean表达式进行检查,一个正确程序必须保证这个boolean表达式的值为true;如果该值为false,说明程序已经处于不正确的状态下,系统将给出警告或退出。
一般来说,assertion用于保证程序最基本、关键的正确性。
assertion检查通常在开发和测试时开启。
为了提高性能,在软件发布后,assertion检查通常是关闭的。
8.GC是什么? 为什么要有GC?9.String s = new String("xyz");创建了几个String Object?11.short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?是报错为可能损失精度吗?呵呵,这个问题的原因就是所有声明为short的类型变量在进行运算时都会自动转为int类型的变量,这样s1+1就不是short型的,而变成int类型的,这时再赋给还是short类型的s1就会报精度损失错误了,这样改下就不会报错了s1=(short)(s1+1),试试看!12.sleep() 和 wait() 有什么区别?sleep是线程类(Thread)的方法,导致此线程暂停执行指定时间,给执行机会给其他线程,但是监控状态依然保持,到时后会自动恢复。
调用sleep不会释放对象锁。
wait是Object 类的方法,对此对象调用wait方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象发出notify方法(或notifyAll)后本线程才进入对象锁定池准备获得对象锁进入运行状态。
13.数组有没有length()这个方法? String有没有length()这个方法?数组没有length()这个方法,有length的属性。
String有有length()这个方法。
2、是否可以继承String类?String类是final类故不可以继承。
14.Overload和Override的区别。
Overloaded的方法是否可以改变返回值的类型? overload一般翻译为重载,表示多个函数共用同一个函数名,为了保证调用这些同名函数时能正确区分究竟应该调用的是其中的哪一个,重载的各个函数的参数表(不考虑形参名)必须彼此不同,通常简略地说成“不同参数表”。
它对返回值的类型没有任何要求,所以你可以随意为每一个重载的函数设置返回类型,相同也行,不同也行。
override一般翻译为覆盖,表示子类对从父类继承来的虚函数重新定义,它要求参数表必须跟父类中被覆盖的那个函数的参数表完全相同,返回值类型原则上也要求相同,但如果返回类型是父类的指针或者父类的引用,覆盖时返回类型允许是子类的指针或者子类的引用。
15.Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?1、什么是Set?(what)Set是Collection容器的一个子接口,它不允许出现重复元素,当然也只允许有一个null对象。
2、如何来区分重复与否呢?(how)“ 用 iterator() 方法来区分重复与否”,这是在网上流传的答案,个人认为这是个错误的答案。
JPI中写的很明白:“set 不包含满足e1.equals(e2) 的元素对 e1 和e2 ”,由此可见回答使用equals()区分更合适。
3、为什么用equals()而不用==来区分?(why)应该从它俩的区别谈起,==是用来判断两者是否是同一对象(同一事物),而equals 是用来判断是否引用同一个对象。
再看一下Set里面存的是对象,还是对象的引用。
根据java的存储机制可知,set里面存放的是对象的引用,所以当两个元素只要满足了equals()时就已经指向同一个对象,也就出现了重复元素。
所以应该用equals()来判断。
16.给我一个你最常见到的runtime exception。
ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException,ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFORMatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException17.error和exception有什么区别?Error(错误)表示系统级的错误和程序不必处理的异常,是java运行环境中的内部错误或者硬件问题,比如,内存资源不足等,对于这种错误,程序基本无能为力,除了退出运行外别无选择。