5-12 Java 的 StringBuffer 和 StringBuilder 类

Java 的 StringBuffer 和 StringBuilder 类

当对字符串进行修改时,需要使用 StringBuffer 和 StringBuilder 类

在这里插入图片描述

在使用 StringBuffer 类时,每次都会对 StringBuffer 对象本身进行操作,而不是生成新的对象,所以如果需要对字符串进行修改推荐使用 StringBuffer。

举例:

public class RunoobTest{
        public static void main(String[] args){
                StringBuilder sb = new StringBuilder(10);

                sb.append("Runoob..");
                System.out.println(sb);

                sb.append("!");
                System.out.println(sb);

                sb.insert(8, "java");
                System.out.println(sb);

                sb.delete(5,8);
                System.out.println(sb);
        }
}

在这里插入图片描述
在这里插入图片描述

运行结果:

$ javac RunoobTest.java
$ java RunoobTest
Runoob..
Runoob..!
Runoob..java!
Runoojava!

在应用程序要求线程安全的情况下,则必须使用 StringBuffer 类。

public class Test{
    public static void main(String[] args){
        StringBuffer sBuffer = new StringBuffer("菜鸟教程官网:");
        sBuffer.append("www");
        sBuffer.append(".runoob");
        sBuffer.append(".com");
        System.out.println(sBuffer);
    }
}

运行结果为:
菜鸟教程官网:www.runoob.com

上面使用的max方法仅仅适用于int型数据。但如果你想得到两个浮点类型数据的最大值呢?

解决方法是创建另一个有相同名字但参数不同的方法

public static double max(double num1, double num2) {
  if (num1 > num2)
    return num1;
  else
    return num2;
}
变量作用域

变量的范围是程序中该变量可以被引用的部分。

方法内定义的变量被称为局部变量。

局部变量的作用范围从声明开始,直到包含它的块结束。

局部变量必须声明才可以使用。

方法的参数范围涵盖整个方法。参数实际上是一个局部变量。

for循环的初始化部分声明的变量,其作用范围在整个循环。

但循环体内声明的变量其适用范围是从它声明到循环体结束。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值