栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JAVA29 动态字符串

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JAVA29 动态字符串

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String str = scanner.next();

        //write your code here......

    }
}

解法一

提示:Stirng、StringBuilder、StringBuffer 都可以用来操作字符串。 不同是 String 不允许被修改 ( 被final修饰 );StringBuilder、StirngBuffer 类的对象能够被多次修改,而不产生新的对象。StringBuilder 和 StringBuffer 最大的不同在于 StringBuilder 类的方法不是线程安全的 ( 不能同步访问 ),但StringBuilder 有速度优势,所以多数情况下推荐使用 StringBuilder .

①:用 StringBuilder 类的 append() 方法保存字符串,然后通过 reverse() 方法反转字符串 ( 我开始时思路不够清晰才这样用!读者不要这样 )。②: 遍历字符串,每三个字母用逗号分隔,使用 insert() 方法插入,号,但每次插入,号后,字符串长度就会 +1,所以需要让 len++; ③: 由于要求每三个字母用逗号分隔,所以理论上是 i = i + 3; 但因为每次插入,号后,字符串长度就会 +1,所以应该是 i = i + 4; 而不是 i = i + 3;④: 在完成,号插入后,再将字符串用 reverse() 反转回去。

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String str = scanner.next();

        //write your code here......
        StringBuilder sb = new StringBuilder(str);
        sb.reverse();

        int i = 3, len = str.length();
        while(i < len){
            sb.insert(i, ",");
            len++;
            i+=4;
        }
        sb.reverse();
        System.out.println(sb);
    }

}

这种解法对初学者而言是比较友好的.



解法二

从末尾开始添加,号,添加一次就 i - 3 ( 为什么是 3 而不是跟解法一一样是 4 呢? 因为索引是从首部开始查找的,所以从末尾开始添加,号不会影响索引的查找;而从首部开始添加,号会影响索引的查找 )

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String str = scanner.next();

        //write your code here......
        StringBuilder sb = new StringBuilder(str);

        int i = str.length() - 3;
        while(i > 0){
            sb.insert(i, ",");
            i-=3;
        }
        System.out.println(sb);
    }

}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/715757.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号