""算一个string对象嘛?
时间: 2023-07-22 12:55:11 浏览: 55
在 Java 中,"" 是一个空字符串,它被认为是一个 String 类型的常量。它不是一个对象,也不会被创建成为一个对象。在上面的代码中,"" 可以看作是一个空字符串常量,用来连接其他的字符串。在这段代码中,实际上只创建了 4 个 String 类型的对象,分别是 "a"、"b"、"c" 和 "abc"。
相关问题
C# 写一个string对象池
下面是一个简单的 C# 字符串对象池的实现,可供参考:
```csharp
public class StringPool
{
private Dictionary<string, string> _pool = new Dictionary<string, string>();
public string Get(string value)
{
if (_pool.TryGetValue(value, out string pooledValue))
{
return pooledValue;
}
else
{
_pool.Add(value, value);
return value;
}
}
}
```
使用方法如下:
```csharp
StringPool pool = new StringPool();
string s1 = pool.Get("hello");
string s2 = pool.Get("world");
string s3 = pool.Get("hello");
Console.WriteLine(s1 == s3); // true
Console.WriteLine(s1 == s2); // false
```
当调用 `Get` 方法时,如果字符串池中已经存在一个与 `value` 相同的字符串,则直接返回该字符串的引用;否则,创建一个新的字符串对象,并将其添加到字符串池中以便后续重用。
创建一个string对象
好的,您可以使用以下代码创建一个名为str的字符串对象:
```c++
std::string str;
```
或者您也可以将其初始化为包含特定文本的字符串,例如:
```c++
std::string str = "Hello, world!";
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)