JAVA第十一次作业

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

和。 [必做题]

 

package mmm;

import java.util.Scanner;

import java.util.concurrent.atomic.AtomicInteger;

 

 

public class mmm {

 

public static void main(String[] args) {

// TODO Auto-generated method stub

Scanner input = new Scanner(System.in);

 

String num1 ;

 

String num2 ;

 

System.out.println("请输入第一个字符串:");

 

num1=input.next();

 

System.out.println("请输入第二个字符串:");

 

num2=input.next();

 

 

 

 

 

System.out.println("和为:"+(Integer.parseInt(num1)+Integer.parseInt(num2)));

 

}

 

}

 

 

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

 

package mmm;

import java.util.Scanner;

import java.util.concurrent.atomic.AtomicInteger;

 

 

public class mmm {

public static void count(String str) {

 

 

 

int sum=0;

 

for(int i=0;i<str.length();i++) {

 

if(str.charAt(i)=='e') {

 

sum++;

 

}

 

}

 

System.out.println("字符串中e出现了"+sum+"次");

 

 

 

}

public static void main(String[] args) {

// TODO Auto-generated method stub

Scanner input = new Scanner(System.in);

 

System.out.println("请输入一个字符串:");

 

String s= input.next();

 

count(s);

 

}

}

 

 

 

 

 

3、生成十个0~100之间的随机数,放到数组中,然后排序输出。(知识点:Math类取整,获得随机数等) [必做题]

package mmm;

import java.util.Scanner;

import java.util.Arrays;

 

 

public class mmm {

public static void j() {

 

int []= new int[10];

 

for(int i=0;i<10;i++) {

 

a[i]=(int) Math.round(Math.random()*100);

 

}

 

Arrays.sort(a);

 

for (int i : a) {

 

System.out.print(i+" ");

 

}

 

 

 

}

public static void main(String[] args) {

// TODO Auto-generated method stub

j();

 

}

}

 

 

 

 

 

4、巴黎时间比北京时间晚7个小时,纽约时间比北京时间晚12个小时,试编写一程序,根据输入的北京时间输出相应的巴黎和纽约时间。[选做题]

package mmm;

import java.text.ParseException;

 

import java.text.SimpleDateFormat;

 

import java.util.Calendar;

 

import java.util.Date;

 

import java.util.Scanner;

 

public class mmm {

public static void mytime() throws ParseException{

 

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

 

Calendar cd= Calendar.getInstance();

 

Scanner in = new Scanner(System.in);

 

System.out.println("请依次输入北京时间的年份、月份、日期、时间数、分钟数,秒数用空格隔开。。。。");

 

String str1=in.nextLine();

 

String []arr=str1.split(" ");

 

if(arr.length!=6) {

 

System.out.println("你输入的数据个数不符合题意");

 

}else {

 

String str = arr[0]+"-"+arr[1]+"-"+arr[2]+" "+arr[3]+":"+arr[4]+":"+arr[5];

 

 

 

Date date = sdf.parse(str);

 

 

 

System.out.println("北京时间为:"+sdf.format(date.getTime()));

 

System.out.println("巴黎时间为:"+sdf.format(date.getTime()-(long)7*60*60*1000));

 

System.out.println("纽约时间为:"+sdf.format(date.getTime()-(long)12*60*60*1000));

 

 

 

}

}

 

 

 

public static void main(String[] args) throws ParseException {

 

// TODO Auto-generated method stub

 

mytime();

 

}

}

 

 

 

5、解析一个邮箱地址是否合法,如果合法则打印出用户名部分和该邮箱所属的网站域名,如果邮箱地址不合法则显示不合法的原因 [选做题]

• 5.1 提示:邮箱地址不合法的因素:

• 5.1.1邮箱地址中不包含@或.

• 5.1.2邮箱地址中含有多了@或.

• 5.1.3邮箱地址中.出现在@的前面

• 5.1.4用户名里有其他字符

package mmm;

import java.util.Scanner;

 

public class mmm {

 

 

 

 

public static boolean mail(String str) {

 

boolean b =true;

 

if(str.indexOf('@')==-1||str.indexOf('.')==-1) {

 

System.out.println("邮箱地址中不包含@或.");

 

return false;

 

}

 

if(str.indexOf('@')!=str.lastIndexOf('@')||str.indexOf('.')!=str.lastIndexOf('.')) {

 

System.out.println("邮箱中含有多个@或.");

 

return false;

 

}

 

if(str.lastIndexOf('@')>str.indexOf('.')) {

 

System.out.println("邮箱中.出现在@的前面");

 

return false;

 

}

 

for(int i=0;i<str.indexOf('@');i++) {

 

char c=str.charAt(i);

 

if((c>=3&&c<=57)||(c>=65&&c<=90)||(c>=97&&c<=122)) {

 

 

 

}else {

 

System.out.println("邮箱用户包含非法字符");

 

return false;

 

}

 

 

 

}

 

 

 

String []array=str.split("@");

 

System.out.println("用户名为:"+array[0]);

 

System.out.println("该邮箱所属的网站域名为"+array[1]);

 

return true;

 

}

 

 

 

public static void main(String[] args)  {

 

// TODO Auto-generated method stub

 

System.out.println("请输入一个邮箱地址...");

 

Scanner in = new Scanner(System.in);

 

String str = in.nextLine();

 

if(mail(str)==true) {

 

 

 

else {

System.out.println("不合法"); 

}

}  

}

 

 

 

 

posted @ 2023-06-19 19:22  绫小路  阅读(9)  评论(0)    收藏  举报