程序设计相关岗位笔试题目
一: 写入如下程序的'运行结果 1、 public class Test { int i = 1; int j = 3; public Test(int m, int n){ this.i = m; this.j = n; } public Test(){} public static void main(String[] args) { new Test().test(); } public void test(){ new Test(4,2); System.out.println("i="+i+",j="+j); } } 我写的是 i=2, j=4。 而实际上的运行结果为i=1, j=3。 2、 public class A { public int Avar; public A(){ System.out.println("AAA"); doSomething(); } public void doSomething(){ Avar = 1111; System.out.println("A.doSomething()"); } } public class B extends A { public int Bvar = 2222; public B(){ System.out.println("BBBB"); doSomething(); System.out.println("Avar="+Avar); } public void doSomething(){ System.out.println("Bvar="+Bvar); } public static void main(String[] args) { new B(); } } 我写的运行结果为: AAA A.doSomething() BBB 2222 1111 而实际运行结果为: AAA Bvar=0 BBB Bvar=2222 Avar=0 3、 Interger integer; if(integer==42){ do something ... }。 次代码片段在运行时抛 空指针异常。 因为Integer为非基本类型的变量, 其默认值为null, 所以 .... ... 4、 /** * 测试 string 的 */ public static void main(String[] args) { String str1 = new String("A"); String str2 = new String("B"); operateString(str1, str2); System.out.println("str1="+str1+",str2="+str2); int x=10; operateInt(x); System.out.println(x); StringBuffer str3 = new StringBuffer("A"); StringBuffer str4 = new StringBuffer("B"); operateStringBuffer(str3, str4); System.out.println("str3="+str3+",str4="+str4); testOperator(); } public static void operateString(String a, String b){ a.concat(b); b=a; } public static void operateInt(int x){ x = x+100; } public static void operateStringBuffer(StringBuffer a, StringBuffer b){ a.append("B"); b=a; } 输出结果为: A, B, 10, AB, B. 此题给出了正解。 5、 String 类型的变量也支持重载符: “+=”。 6、 编程题, 实现 归并排序算法: public class MergeSort2 { public int[] sort(int[] data) { int[] temp=new int[data.length]; mergeSort(data,temp,0,data.length-1); return data; } private void mergeSort(int[] data,int[] temp,int l,int r){ int mid=(l+r)/2; System.out.println(l+", "+mid+", "+r); if(l==r) return ; mergeSort(data,temp,l,mid); mergeSort(data,temp,mid+1,r); for(int i=l;i<=r;i++){ System.out.println("i="+i); temp[i]=data[i]; } int i1=l; int i2=mid+1; for(int cur=l;cur<=r;cur++){ if(i1==mid+1) data[cur]=temp[i2++]; else if(i2>r) data[cur]=temp[i1++]; else if(temp[i1]<temp[i2]) data[cur]=temp[i1++]; else data[cur]=temp[i2++]; } } /** * @param args */ public static void main(String[] args) { int[] datas={1,21,34,79,98,23,68,2,3,8,6,33,6,7,87,32,24,6,776}; MergeSort2 mergeSort=new MergeSort2(); datas=mergeSort.sort(datas); for(int i=0;i<datas.length;i++){ System.out.print(datas[i]+","); } } } |
【程序设计相关岗位笔试题目】相关文章:
营销岗位笔试题目10-01
腾讯hr岗位笔试题目09-03
Google技术岗位笔试题目08-13
审计岗位面试笔试题目09-10
软件岗位测试笔试题目08-31
美的笔试题目12-15
会计笔试题目07-03
EXCEL笔试题目06-12
惠普笔试题目08-10
夏普笔试题目07-03