JAVA试题

1.请根据控制台输入的特定日期格式拆分日期如:请输入一个日期(格式如:**月**日****年)     经过处理得到:****年**月**日

提示:使用String的方法indexOf、lastIndexOf、substring

import java.util.Scanner;
public class day1 {
    public static void main(String[] args){
        System.out.println("请输入一个日期(格式如:**月**日****年)");
        Scanner s = new Scanner(System.in);
        String str = s.nextLine();
        int n = str.indexOf('日'); //获取日的下标
        String str1 = str.substring(n+1); //截取年份
        String str2 = str.substring(0,n+1);//截取月份
        System.out.println(str1+str2);
    }

}

 

2.给出一个随机字符串,判断有多少字母?多少数字?

import java.util.Scanner;
public class day2 {
    public static void main(String args[])
    {
        System.out.println("请输入一段字符串:");
        Scanner scan = new Scanner(System.in);
        String str = scan.next();
        int letter = 0;
        int number = 0;
        int other = 0;
        for(int i = 0;i < str.length();i++)
        {
            if((str.charAt(i) >= 'a' && str.charAt(i) <= 'z') || (str.charAt(i) >= 'A' && str.charAt(i) <= 'Z'))
            {
                letter++;
            }
            else if(str.charAt(i) >= '0' && str.charAt(i) <= '9')
            {
                number++;
            }
            else
            {
                other++;
            }
        }
        System.out.println("字符串"+str+"中字母字符的个数:"+letter);
        System.out.println("字符串"+str+"中数字字符的个数:"+number);
        System.out.println("字符串"+str+"中其他字母的个数:"+other);



    }

}

 

 

3.以下是一段歌词,请从这段歌词中统计出朋友出现的次数。
 " 这些年一个人,风也过,雨也走,有过泪,有过错, 还记得坚持甚么,真爱过才会懂,会寂寞会回首,终有梦终有你在心中。  朋友一生一起走,那些日子不再有,     一 句 话,一辈子,一生情,一杯酒。朋友不曾孤单过,一声朋友你会懂,还有伤,还有痛,还要走,还有我。";
  提示:使用String方法indexOf、substring。

public class day3 {
    public static void main(String[] args){

    String str = "这些年一个人,风也过,雨也走,有过泪,有过错, 还记得坚持甚么,真爱过才会懂,会寂寞会回首,终有梦终有你在心中。朋友一生一起走,那些日子不再有,一句话,一辈子,一生情,一杯酒。朋友不曾孤单过,一声朋友你会懂,还有伤,还有痛,还要走,还有我 ";

    String[] s=str.split("朋友");
        int i = s.length;
        System.out.println(i-1);

    }


}

 

4.编写敏感词过滤程序    说明:在网络程序中,如聊天室、聊天软件等,经常需要对一些用户所提交的聊天内容中的敏感性词语进行过滤。如“性”、“色情”、“爆炸”、“恐怖”、“枪”、“军火”等,这些都不可以在网上进行传播,需要过滤掉或者用其他词语替换掉。

 提示:将用户的聊天内容保存到一个字符串对象或一个StringBuilder对象中,然后与敏感词语类表(数组实现)进行比对。如果属于敏感词语,就过滤掉或替换掉。

public class day4{
    public static void main (String args[]){
        String[] StringBuilder = { "性", "色情", "爆炸", "恐怖", "枪", "军火" };

        String str = "世界恐怖组织都携带枪支?";
        for (int i = 0; i < StringBuilder.length; i++) {
            str = str.replace(StringBuilder[i], "*");

        }
        System.out.println(str);

    }

}

 



5.根据输入的年份、产品类型和随机数产生固定资产编号    即:固定资产编号=年份+0+产品类型+3位随机数    

程序运行流程:

请输入年份:                  
请选择产品类型(1.台式机 2.笔记本 3.其他):            

生成3位随机数    最后显示固定资产编号

  提示:3位随机数按如下方法产生:            (int)(Math.random()*1000);

import java.util.Scanner;

public class day5 {
    public static void main(String[] args){
        Scanner s = new Scanner(System.in);
        System.out.println("请输入年份:");
        String year = s.next();
        System.out.println("请选择产品类型(1.台式机 2.笔记本 3.其他):");
        String id =s.next();
        int i =(int)(Math.random()*1000);
        System.out.println("产品编号为:"+year+id+i);

    }
}

 

 

6.计算某年、某月、某日和某年、某月、某日之间的天数间隔和周数。

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;

public class day6 {
    public static void main(String[] args) throws ParseException {
        Scanner c = new Scanner(System.in);
        System.out.println("请输入第一个日期:");
        String str = c.nextLine();
        System.out.println("请输入第二个日期:");
        String str1 = c.nextLine();
        SimpleDateFormat str2 = new SimpleDateFormat("yyyy-MM-dd");
        Date x = str2.parse(str);
        Date x1 = str2.parse(str1);
        long a = 0;
        if (x.after(x1)) {
            a = x.getTime() - x1.getTime();
        } else {
            a = x1.getTime() - x.getTime();
        }
        long d = 1000 * 60 * 60 * 24;
        long day = a / d;
        long week = day / 7;
        System.out.println("两个日期相隔" + day + "天");
        System.out.println("相隔" + week + "周");
    }
}

  


 

 

7.计算并输出21世纪的闰年,计算程序的执行时间。

public class day7 {
        public static void main(String[] args) {

            long start = System.currentTimeMillis();
            for (int i=2000;i<2100;i++){
                if(i%4==0){
                    System.out.println("21世纪所有的闰年:"+i);
                }
            }
            long end = System.currentTimeMillis();
            long run = end-start;
            System.out.println("程序运行时间为:"+run+"毫秒");
        }

}

  

 


8.编写一个程序,设定一个有大小写字母的字符串,先将字符串的大写字符输出,再将字符串中的小写字符输出。

import java.util.Scanner;
public class day8 {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        System.out.println("请输出一串大小写字母");
        String s1 = s.nextLine();
        char[] c = s1.toCharArray();
        for (char c1:c){
            if (Character.isUpperCase(c1)){
                System.out.print(c1+" ");
            }
        }
        System.out.println();
        for (char c1:c){
            if (Character.isLowerCase(c1))
            {
                System.out.print(c1+" ");
            }
        }

    }
}

  

9.编写程序,(Scanner)当以年-月-日的格式输入一个日期时,输出其该年是否为闰年,该月有几天,该日是星期几

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Scanner;

public class day9{
    public static void main(String[] args) throws Exception{
        System.out.println("输入时间:yyyy-dd-xx");
        Scanner in = new Scanner(System.in);
        String str = in.nextLine();
        SimpleDateFormat df = new SimpleDateFormat("yyyy-dd-xx");
        Date d = df.parse(str);
        Calendar c = Calendar.getInstance();
        c.setTime(d);
        int year = c.get(Calendar.YEAR);
        int month = c.get(Calendar.MONTH)+1;
        int week = c.get(Calendar.DAY_OF_WEEK)-1;
        if(year%400==0||(year%4==0&&year%100!=0)){
            System.out.println("闰年");
        }
        else{
            System.out.println("平年");
        }
        int max = c.getActualMaximum(Calendar.DAY_OF_MONTH);
        String s =week==0?"周日":"周"+week;
        System.out.println(month+"月有"+max+"天"+"该日是"+s);


    }
}

  

 

posted on 2019-06-18 22:23  路远。  阅读(155)  评论(0)    收藏  举报

导航