相关疑难解决方法(0)

字符串和文字之间有什么区别?

什么是"我喜欢Comp Sci!"的类型?我很确定它是字符串还是文字,任何人都可以指出两者之间的区别并帮助我找到答案

java computer-science

4
推荐指数
1
解决办法
217
查看次数

String s ="something"之间有什么区别; 和String s = new String("something");

可能重复:
字符串对象和字符串文字之间的差异

初始化String对象时,至少有两种方法,例如:

String s = "some string";
String s = new String("some string");
Run Code Online (Sandbox Code Playgroud)

有什么不同?

java

4
推荐指数
2
解决办法
2577
查看次数

字符串池对象

能否请您澄清一下,在下面的案例中会创建多少个对象?为什么?我对此略感不安.

String s1 = "cat";

String s2 = "cat";

String s3 = "c"+"at";

String s4 = new String("cat");

String s5 = "kitty"+"cat";

String s6 = new String("kittycat");

String s7 = s5;

String s8= new String(s5); // Newly Added in this Question
Run Code Online (Sandbox Code Playgroud)

java string

4
推荐指数
1
解决办法
108
查看次数

String s ="sometext"如何工作?

在面向对象的语言中,新对象的创建是通过使用new关键字(因为java中的内存分配是动态完成的).

即使String是一个类,如何在没有关键字的情况下创建其对象?

即使它使用字符串池我也无法清楚地理解它: "可以创建一个用户定义的类,我们可以像String一样直接初始化变量"

java oop string

4
推荐指数
1
解决办法
114
查看次数

Diff在Java中使用新的String("xyz")和"xyz"

可能重复:
字符串对象和字符串文字之间的差异

你好,

最重要的是,让我们用String提出Java事实

字符串是不可变的 我的问题 - 如果字符串是不可变的,那么下面的语句应该有编译错误!

             String str = "xyz";
                     or
             String str = new String("xyz");

             str = "abc";        //COMPILATION ERROR
                 or
             str = new String("abc");  //COMPILATION ERROR
Run Code Online (Sandbox Code Playgroud)

以下实例化有什么区别?

 String str = "xyz";
      and
 String str = new String("xyz");
Run Code Online (Sandbox Code Playgroud)

艾米特.

java string instantiation

3
推荐指数
1
解决办法
2448
查看次数

字符串文字与Java中的String对象

在java中,String可以通过以下两种方式创建

  1. String foo="Test";
  2. String fooobj=new String("Test");

在这里,我们提到了这两种创建String的方式之间的区别.我想更多地了解什么是适当的场景,我们应该去哪里

  String foo="Test";
Run Code Online (Sandbox Code Playgroud)

什么时候去

 String fooobj=new String("Test");  ?
Run Code Online (Sandbox Code Playgroud)

java string

3
推荐指数
2
解决办法
1883
查看次数

通过"new"创建String对象

考虑声明:

String s = new String("abc");

这个语句会创建两个String对象,即"abc"和由's'表示的对象吗?

如果它创建了两个对象,那么"abc"会被存储在String池中还是只是被丢弃?

编辑:

我在引用字符串对象和字符串文字之间的差异时提出这个问题,在最后两个答案中,拒绝创建两个对象.

java

3
推荐指数
1
解决办法
211
查看次数

字符串实例化与stringbuffer实例化

我无法弄清楚是否

String ab = "hello";        //straight initialization

String ab_1 = new String ("hello_1");  //initializing using new
Run Code Online (Sandbox Code Playgroud)

两者都有效,但是

StringBuffer bfr = new StringBuffer("hi");   //works only with new
Run Code Online (Sandbox Code Playgroud)

只有在使用new创建时才有效.

为什么String可以直接实例化,但StringBuffer需要new运算符.有人可以解释我的主要原因.

java

3
推荐指数
1
解决办法
2591
查看次数

java中带有new关键字和直接赋值的字符串

String s="hi";
String s1=new String("hi");
Run Code Online (Sandbox Code Playgroud)

从内存的角度来看,s和s1存储在哪里?无论是在堆内存还是堆栈中。

s 指向“hi”,s1 指向 hi 所在的内存位置?

请帮忙?

java string

2
推荐指数
1
解决办法
5757
查看次数

何时“ ==”运算符成功比较字符串?

我了解相等运算符会比较对字符串的引用。因此,它将检查字符串是否指向同一对象,而不是每个字符是否相等。

作为学习搜索算法的第一步,我设置了以下程序,该程序中有一个名称数组,然后检查该数组中是否存在某个名称。

第一种方法

我声明并初始化名称数组。我要求用户输入一个名称,以检查它是否出现在数组中。

这是我使用的代码-

import java.util.Scanner;

public class Strawman{

    public static void main(String[] args){

        System.out.println("Enter the name to search for:");

        Scanner scanner = new Scanner(System.in);
        String key = scanner.nextLine();

        String[] names = {"alice", "bob", "carlos", "carol", "craig", "dave", "erin", "eve", "frank", "mallory", "oscar", "peggy", "trent", "walter", "wendy"};

        for (int i = 0; i < names.length; i++){

            if (key == names[i]) {
                System.out.println("Index " + i + " has the name " + key);
            } 
        }
    }

}
Run Code Online (Sandbox Code Playgroud)

以下屏幕快照显示了该程序的运行之一- …

java arrays string

2
推荐指数
1
解决办法
133
查看次数

用 new 和 " " 初始化字符串的区别

哪一个是正确的,为什么:

String dynamic = new String();
dynamic = " where id='" + unitId + "'";

Or

String dynamic = " where id='" + unitId + "'";
Run Code Online (Sandbox Code Playgroud)

请提出以上 2 个字符串初始化的区别。

java string

1
推荐指数
1
解决办法
2971
查看次数

java如何将引号中的任何内容识别为字符串对象?

如果我写:

String s = new String("abc");
Run Code Online (Sandbox Code Playgroud)

它创建一个类型String为"abc"的对象.如果我写:

String s = "abc";
Run Code Online (Sandbox Code Playgroud)

这也会创建一个值为"abc"的对象.如何在不遇到新关键字的情况下创建对象.

如果我写:

s.append("def");
Run Code Online (Sandbox Code Playgroud)

它创建了另外两个字符串对象:

a. "abcdef"  
b. "def"
Run Code Online (Sandbox Code Playgroud)

因此,在遇到双重引号内的任何内容时,都会创建一个新String对象.这是怎么发生的?

java string

0
推荐指数
2
解决办法
553
查看次数

标签 统计

java ×12

string ×8

arrays ×1

computer-science ×1

instantiation ×1

oop ×1