工具类
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+"不是回文数");
}
}