java OJ题 墓碑上的字符

本文介绍了使用Java进行字符串拼接的两种方法。一种是通过substring方法分割字符串并进行拼接,另一种是通过字符数组实现更复杂的字符串组合。文章详细解释了代码逻辑,包括读取输入、处理字符串以及输出结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

代码块:

import java.util.Scanner;
public class mubeishangdezifu {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scanner=new Scanner(System.in);
		int T=scanner.nextInt();
		for(int i=0;i<T;i++){
			String str1=scanner.next();
			String str2=scanner.next();
			int a=str1.length();
			String str3=str1.substring(0,a/2);
			String str4=str1.substring(a/2,a);
			System.out.println(str3+str2+str4);	
		}
	}
}

解题思路:其实就是字符串逻辑加的思想,substring的运用,将三个字符串拼接在一起。想过用stringBuffer的insert方法,但是代码量会比较多。

第二种思路,定义一个数组,把三部分的代码分别放进去,之后输出,这种做法思路比较简单,但是需要转化。还要知道char和string类型求长度的方法是不同的。

代码块:

import java.util.Scanner;
public class mubei{
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Scanner scanner=new Scanner(System.in);
        int T=scanner.nextInt();
        int len1,len2,len,i = 0;
    while(i<T)
    {
        String str1=scanner.next();
        String str2=scanner.next();
        char[] charArray1=str1.toCharArray();
        char[] charArray2=str2.toCharArray();
        char[] char1=new char[20];
        len1 =charArray1.length;
        len2 = charArray2.length;
        len = len1 + len2;
        for(int j = 0; j<len1/2; j++)
        {
            char1[j] = charArray1[j];
        }
        for(int j = 0; j<len2; j++)
        {
            char1[len1/2+j] = charArray2[j];
        }
        for(int k = 0; k<len1/2; k++)
        {
            char1[len1/2+len2+k] =charArray1 [len1/2+k];
        }
        System.out.println(char1);
        i++;
        }
      }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值