社招测试题(共计20题,5分/题,总分100分,建议考试时长:60分钟,及格线60分)
下面哪个语句不会产生编译错误?( )
A. float a =2.0;
B. char c =”a”;
C. byte b =25;
D. boolean d=0;下面程序执行的结果是?()
public class Test()
{
public static void main(String[] args)
{
System.out.println(“”+’a’+1);
}
}
A. 98
B. a1
C. 971
D. 197下面程序执行的结果是?()
int i = 100;
while(true)
{
If ( i++ > 100 )
break;
System.out.println(i);
}
A. 100
B. 101
C. 102
D. 103下面程序执行的结果是?()
int a=2;
switch(a)
{
case 1:
a+=1;
break;
case 2:
a+=2;
case 3:
a+=3;
break;
case 4:
a+=4;
break;
default:
a=0;
}
System.out.println(a);
A. 5
B. 6
C. 7
D. 8
下面程序的运行结果是 ( )
int a=3, b=1;
if(a==b)
System.out.println("a="+a);
A. a=1
B. a=3
C. 编译错误
D. 正常运行但没有输出下面程序的运行后,a,b,c的值正确的是:()
int a=1,b=2;
int c=(a+b>3?a++:++b);
A. a=2,b=3
B. a=1,b=3
C. a=1,b=2
D. c=2-
下面程序的运行结果( )
public class Demo
{
public static int fun(int c)
{
return c+=2;
}
public static void main(String[] args)
{
int temp=fun(2); //4
System.out.println(temp);}
}
A. 2
B. 4
C. 6
D. 8
下面程序的运行结果,哪个是正确的 ()
int b=1;
while(++b<3)
System.out.println("LOOP");
A. 程序将会进入死循环导致无输出
B. 输出一次LOOP
C. 会输出多次LOOP
D. 程序中含有编译错误下面数组定义错误的是()
A. int [] arr ={23,45,65,78,89};
B. int [] arr=new int[10] ;
C. int [] arr=new int[4]{3,4,5,6};
D. int [] arr={‘a’, 23 , 45 , 6};下面程序执行的结果是?( )
int x =1,y=1;
if(x++==2 & ++y==2) //false,x=2 & true,y=2
{
x=7;
}
System.out.println("x="+ x + ", y=" + y);
A. x=1 y=2
B. x=7 y=1
C. x=7 y=2
D. x=2 y=2在Java中,以下程序编译运行后的输出结果为( )。
public class Test {
int x, y;
Test(int x, int y) {
this.x = x;
this.y = y;
}
public static void main(String[] args) {
Test pt1, pt2;
pt1 = new Test(3, 3);
pt2 = new Test(4, 4);
System.out.print(pt1.x + pt2.x);
}
}
A. 6
B. 3 4
C. 8
D. 7
请问以下代码的运行结果:()
public class Student{
public Student(){
System.out.println(“a”);
}
public Student(){
System.out.println(“b”);
}
public void show(){
System.out.println(“c”);
}
}
public class Demo{
public static void main(String[] args){
Student stu = new Student();
stu.show();
}
}
A、 a
B、 b
C、 c
D、 编译出错
- 有如下类定义:
public class Student {
public Student(){
System.out.println("a");
}
public Student(String name){
_________________ ;
System.out.println(name);
}
public static void main(String[] args){
Student stu =____________ ;
}
}
请问以下哪些选项依次填入横线处会使程序打印字符串“a” ( )
A.this(name);
B.new Student();
C.new Student(“Java”);
D.this();
E.System.out.println(“Java”);
对字符串”ababcdabcdefg”使用indexOf(‘a’)和lastIndexOf(‘a’),的运行结果是( )
A. 1,1
B. 0,6
C. 0,0
D. 1,6下面程序的运行结果是什么( )
public static void main(String[] args){
String s1 = “abc”;
String s2 = “xyz”;
show(s1,s2);
System.out.println(s1+”-----”+s2);
}
static void show(String s1,String s2){
s1 = s2+s1+”Q”;
s2 = “W”+s1;
}
A. abc-----xyz
B. xyzabcQ-----xyzWabc
C. xyzabcQ---- xyzabcQWabc
D. xyzQ----Wabc将字符串转成字符数组的方法是( )
A. toString()
B. toCharArray()
C. toUpperCase()
D. toLowerCase()下面程序的运行结果是( )
public static void main(String[] args){
StringBuffer sb = new StringBuffer();
sb.append("qq").append("ww");
show(sb,"ss");
System.out.println(sb.length());
}
static void show(StringBuffer sb,String str){
sb.append(str);
}
A. 4
B. 2
C. 6
D. 0请问下面程序的执行结果( )
public class Test{
public static void main(String[] args){
List<String> list = new ArrayList<>();
list.add("aaa");
list.add("bbb");
list.add("ccc");
list.add(10);
for(int i=0;i<list.size;i++){
System.out.println(list.get(i));
}
}
}
A、 [aaa, bbb, ccc, 10]
B、 [10, ccc, bbb, aaa]
C、 编译错误
D、 运行时异常-
根据题目补全代码。将自定义Student对象存到ArrayList集合中,要求使用普通for循环进行遍历( )
public class Student {
private String name;
public Student() {
super();
}
public Student(String name) {
super();
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
public class ArrayListTest {
public static void main(String[] args) {
ArrayList<Student> list = new ArrayList<Student>();
list.add(new Student("Jim"));
list.add(new Student("Tom"));
list.add(new Student("LiLei"));for (int i = 0; _____ ; i++) {
Student s = ______;
System.out.println(s.getName());
}
}
A: i < list.size()
B: i<list.length()
C: list.next();
D: list.get(i);
E: list.hasNext(); 关于StringBuffer和StringBuilder说法正确的是( )
A. StringBuffer和StringBuilder的方法不同
B. StringBuffer和StringBuilder都是线程安全的
C. StringBuffer是线程安全的,StringBuilder不是线程安全的
D. StringBuffer不是线程安全的,StringBuilder是线程安全的下面程序运行的结果是( )
String str = “abcdefg”;
str.substring(0,2);
System.out.println(str);
A. ab
B. abc
C. abcdefg
D. 出现下标越界异常