String s = new String("xyz");创建了几个String Object?

题目
问答题
String s = new String("xyz");创建了几个String Object?
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列语句输出结果为( )。 public class test\ { public static void main (String args[]) { String s1=new String("How"); String s2=new String("How"); System.out.println(!(s1.equals(s2))); } }

A.false

B.true

C.0

D.1


正确答案:A

第2题:

下列程序的执行结果是______。 public class Test9 { public static void main(String[] args) { String s1 = new String("I am a girl"); String s2 = new String("I am a girl"); System.out.println (s1.equal (s2)); } }

A.true

B.假

C.I amgirl

D.都不正确


正确答案:A
解析:如果需要比较两个对象的值是否相同,则可以调用equal()方法,如果被比较的两个对象相等,则返回true,否则返回false。

第3题:

( 17 )阅读下面程序

public class OperatorsAndExpressions {

void equalsMethod1(){

String s1=new String("how are you");

String s2=new String("how are you");

System.out.println(s1==s2);

}

public static void main(String args[]){

OperatorsAndExpressions perAndExp=new OperatorsAndExpressions();

// 用于复合类型数据的 “ == ” 运算符

OperAndExp. equalsMethod1();

}

}

程序运行结果是

A ) ==

B ) true

C ) false

D ) equal


正确答案:C

第4题:

下列代码的执行结果是( )。 public class Test{ public static void main String args[]){ String s1=new String("welcome"); String s2=new String("welcome"); System.out.println(s1==s2); System.out.println(s1.equals(s2)); } }

A.false,false

B.false,true

C.true,true

D.true,false


正确答案:B

第5题:

下列语句能给数组赋值而不使用for循环的是

A.myArray{[1]="One";[2]="Two";[3]="Three";}

B.String s[5]=new String[]{"Zero", "One", "Two", "There", "Four"};

C.String s[]=new String[]{"Zero", "One", "Two", "There", "Four"};

D.String s[]=new String[]=|"Zero", "One", "Two", "There", "Four"};


正确答案:C
解析:A)、D)语法不正确,B)中s[5]的形式只能通过for循环的格式进行赋值,而不能直接赋值。C)中表达式左侧的“[]”说明现在定义一个数组,不需要指明数组长度,而表达式右侧“[]”在后面直接紧跟初始内容时也是不需要指定数组大小的,数组大小直接由初值长度决定。

第6题:

下列程序段: String s1=new String("How"); String s2=new String("How"); System.out.println(!(s1==s2)); 的结果为

A.false

B.true

C.1

D.0


正确答案:B

第7题:

阅读下面程序 public class OperatorsAndExpressions{ void equalsMethodl(){ String s1=new String("how are you"); String s2=new String("how are you"); System.out.println(s1==s2); } public static void main(String args[]){ OperatorsAndExpressionsOperAndExp=new OperatorsAndExpressions(); //用于复合类型数据的“==”运算符 OperAndExp.equalsMethod1(); } } 程序运行结果是

A.=

B.true

C.false

D.equal


正确答案:C
解析:本题考查的是Java语言中运算符的特殊用法。相等比较运算符“=”,不仅可用于基本类型的数据之间的比较,还可以用于复合数据类型之间的比较。但是,对于复合类型数据的“=”运算,其比较的目标是两个操作数是否是同一个对象。如果需要比较两个对象的值是否相同,.则可以调用equals()方法。题目中函数equalsMethodl()的代码非常简单,首先生成两个字符串对象s1和s2,然后输出表达式“s1=s2”的结果。根据上面介绍的相等比较运算符的用法,字符串对象s1和s2是复合数据类型,因此表达式“s1=s2”比较的是s1和s2是否同一个对象。显然,s1和s2虽然具有相同的值,即“how are you”,但它们是两个不同的对象。因此,本题的正确答案是C。

第8题:

下面的程序执行后,屏幕上显示的应是 public class Exam{ public static void main(String[]args){ char char1[]={'t','e','s','t'}; char char2[]={'t','e','S','t','1'}; String s1=new String(char1); String s2=new String(char2,0,4); System.out.println(s1.equals(s2)); } }

A.true

B.false

C.test

D.编译错误


正确答案:A
解析:首先可以通过字符数组来生成一个字符串对象:String(char[]value)和 String(char[]value,int startIndex,int numChars),其中,startIndex指定字符串在数组中的起始下标, numChars表示字符个数。然后再测试字符串是否相等,可调用equals()方法,两个字符串相等则返回 true,否则返回false。题目中s1和s2都是“test”,所以最后返回是true,选项A正确。

第9题:

下列程序的执行结果是 public class Testff{ public static void main(String args[]){ String sl=new String("I am boy"); String s2=new String("I am boy"); System.out.println(sl==s2); } }

A.真

B.假

C.I am boy

D.都不正确


正确答案:B
解析:在Java语言中,“==”不仅可以用于基本数据类型之间的比较,还可以用于复合数据类型之间的比较。对于复合类型的“==”运算,其比较的目标是两个操作数是否是同一个对象,虽然题目中,a1和s2的值都是Iamboy,但是它们是不同的对象,比较后的结果应是false。如果需要比较两个对象的值是否相等,可以用equals()方法。

第10题:

String s = new String("xyz");创建了几个String Object?

二者之间有什么区别?


正确答案:

 

两个,一个放在常量区,不管写多少遍,都是同一个。New String 每写一遍,就创建一个新。

更多相关问题