实现字符串拆分成数组和实现组合成字符串

:1.这道题不管是拆分还是组合,都要通过例子去推广到n个
2.第二问不能将第一问的输入值打印当做答案
3.不能使用语言的基本分割组合函数
4.实现两个接口

字符串拆分成数组

(1)首先定义一个接口,并且定义一个拆分方法
public interface Blogs1_chaiFen {
	public abstract void chaiFen();
}
(2)然后写一个类继承接口,并完成拆分方法的重写
import java.util.ArrayList;

public class Blogs1 implements Blogs1_chaiFen {
	private String str;
	ArrayList<String> arrayList = new ArrayList<String>();

	public Blogs1(String str) {
		this.str = str;
	}

	@Override
	public void chaiFen() {
		// 拆分部分,每一轮循环判断字符串是否为空
		while (!str.isEmpty()) {
			// 判断字符串中是否还存在&&字符
			if (str.contains("&&")) {
				// 存在,则获取符号的下标,然后切割从下标0到&&的添加到集合当中去
				int index = str.indexOf("&&");
				arrayList.add("“" + str.substring(0, index) + "”");
				// 然后将刚刚已经添加到集合中的部分通过切割舍去
				str = str.substring(index + 2);
			} else {
				// 不存在,则将最后一部分之间添加到集合中去
				arrayList.add("“" + str + "”");
				break;
			}
		}
		// for (int i = 0; i < arrayList.size(); i++) {
		// System.out.println(arrayList.get(i));
		// }
		System.out.println(arrayList);
	}
}
(3)写一个实现类	
import java.util.Scanner;

/**
 * 1,字符串拆分成数组,如,“ab&&2”,通过“&&”做分隔符,分割得到字符串数组[“ab”,“2”];
 * 
 * @author hf
 *
 */
public class Text {
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		System.out.println("输入要拆分的字符串,eg:ab&&2");
		String str = scanner.next();
		// String str = "ab&&2";//测试
		Blogs1 blogs1 = new Blogs1(str);
		blogs1.chaiFen();
		scanner.close();
	}
}

实现字符串组合

(1)首先定义一个接口,并且定义一个组合方法
public interface Blogs1_heBing {
	public abstract void hebing();
}
(2)然后写一个类继承接口,并完成组合方法的重写
public class Biogs1_2 implements Blogs1_heBing {
	private String strHeBing = "";// 合并字符串
	private String[] arrs;// 数组

	public Biogs1_2(String[] arrs) {
		this.arrs = arrs;
	}

	@Override
	public void hebing() {
		// 获取数组中每个内容除引号的部分,并且添加&&符号
		for (String arr : arrs) {
			strHeBing += arr.substring(1, arr.length() - 1) + "&&";
		}
		// 打印合并数组中除去最后一个&&的字符串
		System.out.println(strHeBing.substring(0, strHeBing.length() - 2));
	}
}
(3)写一个实现类	
import java.util.Scanner;

/**
 * 2,实现字符串组合,如:[“ab”,“2”]通过“&&”分隔符,组合成字符串“ab&&2”
 * 
 * @author hf
 *
 */
public class Text {
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		System.out.println("请输入数组的长度n");
		int n = scanner.nextInt();
		String[] arrs = new String[n];
		System.out.println("请输入带引号的数组内容,eg:“ab”");
		for (int i = 0; i < arrs.length; i++) {
			arrs[i] = scanner.next();
		}
		Biogs1_2 biogs1_2 = new Biogs1_2(arrs);
		biogs1_2.hebing();

		scanner.close();
	}
}

猜你喜欢

转载自blog.csdn.net/qq_45481524/article/details/106892254