标签: stringbuffer

在Java中将StringBuffer转换为字节数组

在Java中,我如何将StringBuffer转换为字节数组?

java stringbuffer

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

如何在Java ME中将StringBuffer转换为InputStream?

我是Java的新手,也是学习Java ME开发的人.我陷入了这种转变.请帮我转换StringBufferInputStream.谢谢!

java midlet inputstream stringbuffer java-me

17
推荐指数
2
解决办法
2万
查看次数

为什么要使用StringBuilder?StringBuffer可以使用多个线程以及一个线程吗?

假设我们的应用程序只有一个线程.我们正在使用StringBuffer那么问题是什么?

我的意思是如果StringBuffer可以通过同步处理多个线程,使用单线程有什么问题?

为什么要用StringBuilder呢?

java stringbuilder multithreading synchronization stringbuffer

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

StringBuffer和StringBuilder中的警告

我有一个StringBuffer在for循环外部和内部for循环初始化我连接一些字符串.

我收到了警告

'StringBuffer stringBuffer'可以声明为'StringBuilder'

字符串连接作为'stringbuilder.append()'调用的参数

然后我将StringBuffer更改为StringBuilder,因为它比StringBuffer快.现在我收到了警告

字符串连接作为'stringbuilder.append()'调用的参数

示例代码:

public static String stringConcat(String[] words) {
    StringBuffer stringBuffer = new StringBuffer();
    for (String word : words) {
        stringBuffer.append(word).append(" ");
    }
    return stringBuffer.toString();
}
Run Code Online (Sandbox Code Playgroud)

为什么我收到这些警告.

编辑实际代码:

stringBuffer.append(word.substring(0, 1).toUpperCase() + word.substring(1).toLowerCase()).append(" ");
Run Code Online (Sandbox Code Playgroud)

java stringbuilder android string-concatenation stringbuffer

16
推荐指数
2
解决办法
6145
查看次数

如何重新分配StringBuffer的值?

我们如何重新赋值StringBuffer或StringBuilder变量的值?

StringBuffer sb=new StringBuffer("teststr");
Run Code Online (Sandbox Code Playgroud)

现在我必须将sb的值更改为"testString"而不清空内容.我正在寻找一种方法,可以直接执行此分配,而无需使用单独的内存分配.我认为我们只能在清空内容后才能执行此操作.

java string stringbuilder stringbuffer

14
推荐指数
3
解决办法
3万
查看次数

什么是更高效的StringBuffer new()或delete(0,sb.length())?

人们经常认为避免创建对象(特别是在循环中)被认为是一种很好的做法.

那么,最有效的是StringBuffer什么?

StringBuffer sb = new StringBuffer();
ObjectInputStream ois = ...;

for (int i=0;i<1000;i++) {

    for (j=0;i<10;j++) {
        sb.append(ois.readUTF());
    }
    ...

    // Which option is the most efficient? 
    sb = new StringBuffer(); // new StringBuffer instance?
    sb.delete(0,sb.length()); // or deleting content?

}
Run Code Online (Sandbox Code Playgroud)

我的意思是,有人可能认为创建一个对象比循环遍历一个数组要快.

java performance instance stringbuffer

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

在IntelliJ调试/运行中将字符串缓冲区传递给java程序

如何在IntelliJ或Eclipse ....中完成在命令行上运行以下行的等价物:

java MyJava < SomeTextFile.txt
Run Code Online (Sandbox Code Playgroud)

我试图在IntelliJ中的Run/Debug Configuration的Program Arguments字段中提供文件的位置

java intellij-idea stringbuffer

13
推荐指数
2
解决办法
3331
查看次数

deleteCharAt或setLength,哪种方法最好从StringBuilder/StringBuffer中删除最后一个char

在许多情况下,我们需要删除StringBuilder/StringBuffer的最后一个字符.例如,给定a int[]{1,2,3},实现String toString(int[] a)方法,用逗号分隔符联系每个元素.输出应该是1,2,3,没有拖尾逗号.

我们可以轻松编写一个循环:

int[] nums = new int[]{1,2,3,4,5};
StringBuilder sb = new StringBuilder();
for (int i = 0; i < nums.length; i++) {
    sb.append(nums[i]);
    sb.append(",");
}
//here we need to remove the tailing ','
Run Code Online (Sandbox Code Playgroud)

但我们总是需要去除拖尾','.有两种方法可以实现它:

sb.deleteCharAt(sb.length() - 1);
Run Code Online (Sandbox Code Playgroud)

sb.setLength(sb.length() - 1);
Run Code Online (Sandbox Code Playgroud)

推荐哪一个?为什么?

注意:我知道做了Arrays.toString什么.这只是一个描述我的问题的例子,可能不太合适. 这不是关于字符串连接的讨论,而是StringBuffer/StringBuilder的最佳实践.

java stringbuilder stringbuffer

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

如何获取Java对象的地址?

有没有办法获取Java对象的地址?

问题来自哪里?:首先,我读取属性文件,文件中的所有数据都放在表格中.属性文件可以更新.所以,我想听那个文件.我使用PropertyChangeSupport和PropertyChangeListener监听对象.

updatedStatus = new basit.data.MyString();
    updatedStatus.addPropertyChangeListener(new java.beans.PropertyChangeListener() {

        //After changes "i", we inform the table model about new value
            public void propertyChange(PropertyChangeEvent evt) {
                Object objec=evt.getNewValue();
                tableModel.setValueAt(objec.toString(), 0, 5);
            }
        });
Run Code Online (Sandbox Code Playgroud)

如果updatedStatus更改,那么我更新表.MyString类具有私有字符串"Value".我想听属性文件.因此,它应该使updatedStatus.value和属性文件的字符串在相同的地址相等.如果我能做到,所以我不需要听属性文件.

updatedStatus.setValue(resourceMap.getString("HDI.Device.1.Name"));
Run Code Online (Sandbox Code Playgroud)

我试图使用StringBuffer,但我无法实现它.这就是为什么,我问了这个问题.

java string stringbuffer object-address

12
推荐指数
3
解决办法
4万
查看次数

StringBuffer的容量是多少?

当我运行此代码时:

StringBuffer name = new StringBuffer("stackoverflow.com");
System.out.println("Length: " + name.length() + ", capacity: " + name.capacity());
Run Code Online (Sandbox Code Playgroud)

它给出了输出:

长度:17,容量:33

明显的长度与字符串中的字符数有关,但我不确定容量是多少?在重新分配空间之前,StringBuffer可以容纳的字符数是多少?

java stringbuffer

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