常用数据类型处理类

1.从命令行参数中得到一个字符串,统计字符串中字母a的出现次数

程序代码:

package ex7;
import java.util.*;
public class ex7_1 {
public static void main(String[] args) {  
	System.out.println("请输入字符串");   
	Scanner s1=new Scanner(System.in);   
	String str=s1.next();      
	System.out.println("请输入要查询的字母"); 
	Scanner s2=new Scanner(System.in); 
	char ch=s2.next().charAt(0);     
	int count=0;     
	for(int i=0;i<str.length();i++)    
		if(ch==str.charAt(i))      
			count++;                  
	System.out.println(ch+"字母出现次数:"+count);  
	}
}

2.从键盘输入若干行文字,最后输入的一行以end作为结束标记。要求:

(1)统计该段文字中英文字母的个数

(2)将其中的所有单词the全部改为a,输出结果

(3)将该段文字所有的数字串找出来输出

程序代码:

package ex7;
import java.util.*;
public class ex7_2 {
public static void main(String[] args){
	String str;
	String s="";
	int c=0;
	Scanner in=new Scanner(System.in);
	do{
		str=in.nextLine();
		s=s.concat(str);
	}while(!str.endsWith("end"));
	System.out.println("您输入的字符串为:"+s);
for(int i=0;i<s.length();i++){
	if((s.charAt(i)>=65&&s.charAt(i)<=90)||(s.charAt(i)>=97&&s.charAt(i)<=122)){
		c++;
		}
}System.out.println("英文字母的个数为"+c);

    System.out.println("替换之后的字符串:"+s.replaceAll("the", "a"));
    System.out.print("数字串为:");
    for(int i=0;i<s.length();i++){
    	if(s.charAt(i)>=48&&s.charAt(i)<57){
    		System.out.print(s.charAt(i));
    	}
    	}
}
}

//大写65-90 小写97-122  数字48-57

4.分别用字符数组和字符串存储一个英文句子”java is an object oriented programming language”,分理处其中的单词兵输出,计算这些单词的平均字母数。

程序代码:

package ex7;
public class ex7_4 {
	public static void main(String[] args) {
		double a=0,b=1;
		String str1="Java is an Object Oriented programming language";
		char[] str2= str1.toCharArray();
		String[] s=str1.replaceAll(" ", ",").split(",");
		for(int i=0;i<s.length;i++)
		{	if(str1.charAt(i)!=',') {
				System.out.println(s[i]);
			}
		}
		System.out.println("平均字母数:"+((double)str1.replaceAll(" ","").length())/(double)s.length);
		for(int i=0;i<str2.length;i++) {
			if(str2[i]!=' '){	
				a++;
			System.out.print(str2[i]);
			}
			else
			{		b++;
				System.out.println();}
		}System.out.println();
		System.out.println("平均字母数:"+a/b);
	}
}

5.利用随机函数产生20个10-90之间的不重复整数,将这些数拼接在一个字符串中,用逗号隔开,每产生一个新数,要保证在该字符串中不存在。最后将串中的整数分离存放到一个数组中,将数组内容按由小到大输出。

程序代码:

package ex7;
public class 7_5 {
		public static boolean juge(int[] num,int r){
			for(int i=0;i<num.length;i++){
				if(num[i]==r) {
					return false;
				}
			}
			return true;
		 }  
		public static int[] trans(String str){
			int[] a=new int[20];
			int count=0;
			String st="";
			for(int i=0;i<str.length();i++){
				if(str.charAt(i)!=','&&str.charAt(i)!=' '){
					st+=str.charAt(i);
				}else{
					a[count]=Integer.parseInt(st);
					count++;
					st="";
				}
			}return a;
		}
	   public static void main(String[] args) {
			int[] num=new int[20];
			String str="";
			int r=0;
			int[] s;
			for(int i=0;i<num.length;i++){
				r=(int)(Math.random()*80)+10; 
				if(Rand.juge(num,r)){
					num[i]=r;
					if(i!=19){
						str=str+r+",";
					}else{
						str=str+r+" ";
					}
				}
				else {
					i--;
				}
			}
		System.out.println("字符串:"+str);
		s=Rand.trans(str);
		System.out.println("未排序前的整型数组");
		for(int i=0;i<num.length;i++){
			System.out.print(s[i]+"  ");
		}System.out.println();
		int k;
		for(int i=0;i<num.length;i++){
			for(int j=0;j<i;j++){
				if(s[i]<s[j]) {
				k=s[i];
				s[i]=s[j];
				s[j]=k;
			}
		}}
		System.out.println("排序后的数组:");
		for(int i=0;i<num.length;i++){
			System.out.print(s[i]+"  ");
		}
	   }
	   }

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值