ACM模式的输入输出-String字符串交替拼接 - java

1.什么是ACM输入模式呢?

就是自己构造输入数据格式,把要需要处理的容器填充好,OJ不会给你任何代码,输入输出函数都要自己写,最后也要自己控制返回数据的格式。而力扣上是核心代码模式,就是把要处理的数据都已经放入容器里,可以直接写逻辑。

 2.字符串String的输入处理

  Scanner scanner = new Scanner(System.in);

        System.out.print("第一个字符串为: ");
        String word1 = scanner.nextLine();

        System.out.print("第二个字符串为: ");
        String word2 = scanner.nextLine();

       
        String res = allover(word1, word2);
        System.out.println("处理后,数为:" + res);

//此处为两个字符串,若需要传入未知个数,可使用下面代码

        Scanner scanner = new Scanner(System.in);

        String mergedString = "";
        boolean continueInput = true;

        while (continueInput) {
            System.out.print("Enter a word (or 'q' to quit): ");
            String input = scanner.nextLine();

            if (input.equals("q")) {
                continueInput = false;
            } else {
                mergedString = mergeAlternately(mergedString, input);
            }
        }

        System.out.println("Merged string: " + mergedString);
    }

3.字符串的拼接处理

 public static String allover(String word1, String word2) {

        StringBuilder sb = new StringBuilder();
            int len1 = word1.length();
            int len2 = word2.length();
            int i = 0 , j = 0;
//双指针
            while (i < len1 || j < len2) {
                if(i<len1){
                    sb.append(word1.charAt(i));
                    i++;
                }
                if (j<len2){
                    sb.append(word2.charAt(j));
                    j++;
                }
            }
            return sb.toString();
        }

4.完整代码

package com.example.train;

import java.util.Scanner;

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

        System.out.print("第一个字符串为: ");
        String word1 = scanner.nextLine();

        System.out.print("第二个字符串为: ");
        String word2 = scanner.nextLine();

        //

        String res = allover(word1, word2);
        System.out.println("处理后,数为:" + res);

    }


    public static String allover(String word1, String word2) {

        StringBuilder sb = new StringBuilder();
            int len1 = word1.length();
            int len2 = word2.length();
            int i = 0 , j = 0;
//双指针
            while (i < len1 || j < len2) {
                if(i<len1){
                    sb.append(word1.charAt(i));
                    i++;
                }
                if (j<len2){
                    sb.append(word2.charAt(j));
                    j++;
                }
            }
            return sb.toString();
        }
}

5.结果呈现

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值