Java-比较字符串

本文介绍了一个Java程序,该程序创建了100个由2个随机字符组成的字符串,并存储在一个数组中。随后,程序统计并打印出了数组中重复的字符串及其数量。文章通过双重循环比较每个字符串,实现了重复字符串的检测。
import java.util.Scanner;

/**
 创建一个长度是100的字符串数组
使用长度是2的随机字符填充该字符串数组
统计这个字符串数组里重复的字符串有多少种
 *
 */

public class TestChar {
	public static void main(String[] args) {
	String[] StrArray = new String[100];
	int jishu = 0;
	for (int i = 0; i < StrArray.length; i++) {
		 StrArray[i] = StringRandom(2);
		 System.out.print(StrArray[i] + "\t");
		 jishu ++;
		 if(jishu % 20 == 0)
		 {
			 System.out.println();
		 }
	}
	System.out.println("***********************************************************");
	System.out.println("这个字符串数组里重复的字符串是:");
	int jishu2 = 0;    //统计相同元素的数目
	for(int i = 0; i < 99; i ++)    //i表示前一个元素的下标
	{
		for(int j = i + 1; j < 100; j ++) //j表示后一个元素的下标
		{
			if(StrArray[i].equals(StrArray[j]))//如果前一个元素和后一个元素内容相同,则输出该元素
			{
				System.out.print(StrArray[i]+"\t");
				jishu2++;
			}
		}
	}
	System.out.println();
	System.out.println("相同元素的数目是:"+jishu2);

		
	}
	
	
	//随机字符串生成方法  //和我的前一个博客生成随机字符串方法类似,注释参考那个博客
	public static String StringRandom(int count)
	{
	short start = (short)'0';
	short end = (short)'z';
	char[] carr = new char[count];
	 for (int i = 0; i < count; i++) 
	 {
		 while(true)
		 {
		 char r = (char)(Math.random()*end + start); 
		 if(Character.isLetterOrDigit(r))  
		 {
			 carr[i] = r;
			 break;
		 }	
		
		 }
	 }
	 String str = String.valueOf(carr);    //把字符数组转化为字符串
	 return str;
	}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值