java 2018.12.15 Homework

工具类

1、编写一个程序,实现从命令行参数输入两个字符串类型的数值,并计算输出两个数值的和。 [必做题]


	public static void main(String[] args) {
		int a = Integer.parseInt(args[0]);
		int b = Integer.parseInt(args[1]);
		int c = a+b;
		System.out.println(c);
		

	}


2、编写一个程序,实现从命令行参数输入一字符串,统计该字符串中字符“e”出现的次数。(识点:String中常用的方法) [必做题]

public static void main(String[] args) {
	String s = args[0];
	int n = 0;
	for(int i = 0;i < s.length();i++){
		if(s.charAt(i)=='e'){
			n++;
		}
	}
	System.out.println(n);
}

解析一个邮箱地址是否合法,如果合法则打印出用户名部分和该邮箱所属的网站域名,如果邮箱地址不合法则显示不合法的原因 [选做题]
2.1 提示:邮箱地址不合法的因素:
2.1.1邮箱地址中不包含@或.
2.1.2邮箱地址中含有多了@或.
2.1.3邮箱地址中.出现在@的前面
2.1.4用户名里有其他字符
2.2实现步骤:
2.2.1创建一个类,类名:mailtest

public class  m=Mailtest{

	public static void main(String[] args) {
		System.out.println(textmail());

	}
	public static boolean textmail(){
		Scanner sc = new Scanner(System.in);
		String mail = sc.nextLine();
		int i = 0;
		int j = 0;
		for(int n=0;n<mail.length();n++){
			if(mail.charAt(n)=='@'){
				i++;
			}
			if(mail.charAt(n)=='.'){
				j++;
			}
			if(!(mail.charAt(n)=='.'||mail.charAt(n)<='9'
					&&mail.charAt(n)>='0'||mail.charAt(n)<='z'
					&&mail.charAt(n)>='a'||mail.charAt(n)<='Z'
					&&mail.charAt(n)>='@')){
				return false;
			}
		}
		if(!(i==1&&j==1)){
			return false;
		}
		if(mail.startsWith("@")||mail.startsWith(".")){
			return false;
		}
		return true;
	}
}

3、分别在控制台输入字符串和子字符串,并计算字符串中子字符串出现的次数。 [选做题]

public static void main(String[] args) {
	String a = "arfdskarfjlksar";
	String b = "ar";
	int n = 0;
	for(int i=0;i<a.length();){
		if(a.indexOf(b,i)>=0){
			n++;
			i = a.indexOf(b,i)+1;
			continue;
		}else{
			break;
		}
	}
	System.out.println(n);
}

4、有一个字符串,其中包含中文字符、英文字符和数字字符,请统计和打印出各个字符的个数。 [选做题]

public static void main(String[] args) {
	String s = "fdsjkf45454附近的十几份";
	int i = 0;
	int j = 0;
	for(int n=0;n<s.length();n++){
		if(s.charAt(n)>'0'&&s.charAt(n)<'9'){
			i++;
		}
		if(s.charAt(n)>'A'&&s.charAt(n)<'Z'||s.charAt(n)>'a'&&s.charAt(n)<'z'){
			j++;
		}
	}
	System.out.println("数字字符个数"+i+" 英文字符个数"+j+" 中文字符个数"+(s.length()-i-j));

}

5、有一种数叫回文数,正读和反读都一样,如12321便是一个回文数。编写一个程序,从命令行得到一个整数,判断该数是不是回文数。 [选做题]

public static void main(String[] args) {
	Integer num = new Integer(1234554321);
	String s = num.toString();
	boolean isTrue = true;
	for(int i=0;i<s.length()/2;i++){
		if(s.charAt(i)!=s.charAt(s.length()-1-i)){
			isTrue = false;
			break;
		}
	}
	if(isTrue){
		System.out.println(num+"是回文数");
	}else{
		System.out.println(num+"不是回文数");
	}
}

猜你喜欢

转载自blog.csdn.net/weixin_43986014/article/details/85013471
今日推荐