niusouti.com

使用String s1=new String("Java");String s2=new String("Java")创建两个字符串时,s1,s2使用不同的内存空间

题目

使用String s1=new String("Java");String s2=new String("Java")创建两个字符串时,s1,s2使用不同的内存空间


相似考题
更多“使用String s1=new String("Java");S”相关问题
  • 第1题:

    有如下applet代码:

    import java.applet.*;

    import java.awt.*;

    public class MyApplet extends Applet

    {

    AA s;

    public void int()

    {

    s = new AA("Hello!", "I love JAVA.");

    }

    public void paint(Graphics g)

    {

    g.drawString(s.toString(), 30, 50);

    }

    }

    class AA

    {

    String s1;

    String s2;

    AA(String str1, String str2)

    {

    s1 = str1;

    s2 - str2;

    }

    public String toString()

    {

    return s1 + s2;

    }

    }

    运行后,窗口上将会出现什么,选择一个正确答案______。

    A.Hello!

    B.I love JAVA.

    C.Hello! I love JAVA.

    D.什么都没有


    正确答案:C

  • 第2题:

    下面程序的运行结果是( )。 public class OperatorsAndExpressions{ void equalsMethod1( ){ //基本类型的数据之间的比较 int i=10,j=15; System.out,println(i==j); //复合数据类型的数据之间的比较 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 OperAndExp=new OperatorsAndExpressions( ): //用于基本类型数据和复合类型数据的=="运算符 OperAndExp,equalsMethod1( ) } }

    A.false false

    B.false true

    C.tree false

    D.true true


    正确答案:A

  • 第3题:

    下列程序的执行结果是______。 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。

  • 第4题:

    下列语句能给数组赋值而不使用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)中表达式左侧的“[]”说明现在定义一个数组,不需要指明数组长度,而表达式右侧“[]”在后面直接紧跟初始内容时也是不需要指定数组大小的,数组大小直接由初值长度决定。

  • 第5题:

    下列代码的执行结果是( )。 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

  • 第6题:

    下列语句输出结果为( )。 public class test { public static void main(StringArgsl[]) { 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 OperatorAndExceptions { public static void main(String args[ ] { int i=10,j=15; System.out.println(i==j); String s1 = new String("how are you!"); String s2=new String("how are you!"); System.out.println(s1==s2); } } 其输出为( )。

    A.true false

    B.true true

    C.false true

    D.false false


    正确答案:D
    解析:本题考查比较运算符==的使用。比较运算符不仅可以用于基本数据类型的数据之间的比较,还可以用于复合数据类型的数据之间的比较。题中整型数i和j的值不同,故其==比较的结果为false。s1和s2的值虽然都是“howareyou!”,但是由于它们是不同的对象,因此运算后的结果为false。如果需要比较两个对象的值是否相同,则可以调用equals()方法。

  • 第8题:

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

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

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

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

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


    正确答案:C
    解析:字符串数组赋初值的方法有两种,一种是如选项C一样初始化。另外一种是先为每个数组元素分配引用空间,再为每个数组元素分配空间并赋初值。例如还可做如下赋值:
      string s[]=new String[5];
      s[0]="Zero";
      s[1]="One";
      s[2]="Two";
      s[3]="Three";
      s[4]="Four";

  • 第9题:

    下面程序执行后,屏幕上显示的应是______。 public class Testl0 { 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 (si.equal (s2)); } }

    A.true

    B.假

    C.test

    D.编译错误


    正确答案:A
    解析:首先可以通过字符数组来生成一个字符串对象:String(char[]value);String(char[]value,intstartlndex,intnumChars);其中,startlndex指定字符串在数组中的起始下标,numChars表示字符个数。然后再测试字符串是否相等,可调用equal()方法,两串相等则返回true,否则返回false。

  • 第10题:

    下面哪个是对字符串String的正确定义()。

    • A、String s1=null;
    • B、String s2=’null’;
    • C、String s3=(String)‘abc’;
    • D、String s4=(String)‘/uface’;

    正确答案:A

  • 第11题:

    import java.util.*;  public class WrappedString {  private String s;  public WrappedString(String s) { this.s = s; }  public static void main(String[] args) {  HashSet hs = new HashSet();  WrappedString ws1 = new WrappedString(”aardvark”);  WrappedString ws2 = new WrappedString(”aardvark”);  String s1 = new String(”aardvark”);  String s2 = new String(”aardvark”);  hs.add(ws1); hs.add(ws2); hs.add(s1); hs.add(s2);  System.out.println(hs.size()); } }  What is the result?() 

    • A、 0
    • B、 1
    • C、 2
    • D、 3
    • E、 4
    • F、 Compilation fails.
    • G、 An exception is thrown at runtime.

    正确答案:D

  • 第12题:

    判断题
    使用String s1=new String("Java");String s2=new String("Java")创建两个字符串时,s1,s2使用不同的内存空间
    A

    B


    正确答案:
    解析: 暂无解析

  • 第13题:

    下列语句输出结果为( )。 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

  • 第14题:

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

    A.false

    B.true

    C.1

    D.0


    正确答案:B

  • 第15题:

    阅读下面程序 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。

  • 第16题:

    下面程序代码运行结果为( )。 import java.awt.*; public class Test { public static void main (String args[]) { String s1="a+b+c"; String s2="+"; int i=s1.lastIndexOf (s2); System.out.println(i); } }

    A.0

    B.1

    C.2

    D.3


    正确答案:D
    解析:lastIndexOf方法返回一个整数值,指出String对象内子字符串的最后一次出现的开始位置下标。如果没有找到子字符串,则返回-1。本题中子串“+”在字符串“a+b+c”中出现了两次,最后一次出现的起始位置为3。

  • 第17题:

    阅读下面程序 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[]){ OperatorsAndExpressions perAndExp=new OperatorsAndExpressions(); OperAndExp.equalsMethod1(); } } 程序运行结果是( )。

    A. ==

    B.true

    C.假

    D.equal


    正确答案:C

  • 第18题:

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

    A.true false

    B.true true

    C.false true

    D.false false


    正确答案:C
    解析:本题考查比较运算符(==)的使用。比较运算符不仅可以用于基本数据类型的数据之间的比较,还可以用于复合数据类型的数据之间的比较。题中s1和s2的值虽然都是hello,但是由于它们是不同的对象,因此运算后的结果为false。如果需要比较两个对象的值是否相同,则可以调用equals()方法。所以程序最后输出false和true。

  • 第19题:

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

    A.false

    B.true

    C.1

    D.0


    正确答案:B

  • 第20题:

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

    A.true, false

    B.true, true

    C.false, true

    D.false, false


    正确答案:C

  • 第21题:

    若输入 "I am a boy!",下列程序的运行结果为______。 char connect(string1,string2,string) char string1[],string2[],string[]; { int i,j; for (i=0;stringl[i] !='\0';i++) string[i]=stringl[i]; for (j=0;string2[j] !='\0';j++) string[i+j]=string2[j]; string[i+j ] ='\0'; } main ( ) { char s1 [100] , s2 [100] , s [100]; printf ("\n 输入 string1: \n"); scanf("%s",s1); printf (" \n 输入 string2: \n" ); scanf ("%s", s2); connect (s1, s2, s); printf ("%s\n", s); }

    A.I am a boy!

    B.输入string2:

    C.I am

    D.I am a boy!


    正确答案:C

  • 第22题:

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


    正确答案: 两个或一个,”xyz”对应一个对象,这个对象放在字符串常量缓冲区,常量”xyz”不管出现多少遍,都是缓冲区中的那一个。New String每写一遍,就创建一个新的对象,它一句那个常量”xyz”对象的内容来创建出一个新String对象。如果以前就用过’xyz’,这句代表就不会创建”xyz”自己了,直接从缓冲区拿。

  • 第23题:

    单选题
    import java.util.*;  public class WrappedString {  private String s;  public WrappedString(String s) { this.s = s; }  public static void main(String[] args) {  HashSet hs = new HashSet();  WrappedString ws1 = new WrappedString(”aardvark”);  WrappedString ws2 = new WrappedString(”aardvark”);  String s1 = new String(”aardvark”);  String s2 = new String(”aardvark”);  hs.add(ws1); hs.add(ws2); hs.add(s1); hs.add(s2);  System.out.println(hs.size()); } }  What is the result?()
    A

     0

    B

     1

    C

     2

    D

     3

    E

     4

    F

     Compilation fails.

    G

     An exception is thrown at runtime.


    正确答案: D
    解析: 暂无解析