常用工具类练习

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

public class One {
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
String a=sc.next();
int a1=a.indexOf("年");
int a2=a.indexOf("月");
int a3=a.indexOf("日");
String a4=a.substring(a3+1,a1+1);
String a5=a.substring(0,a3+1);
System.out.println(a4+a5);
}
}

运行结果:

3月3日2019年

2019年3月3日

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

public class Two {

    public static void main(String[] args){

        Scanner sc=new Scanner(System.in);

        String b=sc.next();

        char[] b1=b.toCharArray();

        int x=0,y=0;

        for(char b2:b1){

            if(Character.isLetter(b2)){

                x++;

            }else if(Character.isDigit(b2)){

                y++;

            }

        }

        System.out.println("字母的个数:"+x+"数字的个数:"+y);

    }

}

运行结果:

aaa45a

字母的个数:4数字的个数:2

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

方法一:

import com.sun.xml.internal.ws.util.StringUtils;

public class Three {

    public static void main(String[] args) {

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

        int num=0;

        for(int i=0;i<c.length()-1;i++){

            String cc=c.substring(i,i+2);

            if(cc.equals("朋友")){

                num++;

            }

        }

        System.out.println(num);

    }
}

运行结果:

3

方法二:

public class Work_3 {

    public static void main(String[] args) {

        String s = "这些年一个人,风也过,雨也走,有过泪,有过错,"+

                   " 还记得坚持甚么,真爱过才会懂,会寂寞会回首," +

                   "终有梦终有你在心中。朋友一生一起走,那些日子不再有," +

                   "一句话,一辈子,一生情,一杯酒。朋友不曾孤单过,一声朋友你会懂," +

                   "还有伤,还有痛,还要走,还有我。";

        int num=0;

        getNumber(s,num);

    }

    public static void getNumber(String s,int num){

        int n = s.indexOf("朋友");

        if(n>=0){

            num++;

            s=s.substring(n+2);

            getNumber(s,num);

        }else{

            System.out.println(num);

        }

    }

}

运行结果:

3

方法三:

public class Work_3_2 {

    public static void main(String[] args) {

        String s = "这些年一个人,风也过,雨也走,有过泪,有过错,"+

                " 还记得坚持甚么,真爱过才会懂,会寂寞会回首," +

                "终有梦终有你在心中。朋友一生一起走,那些日子不再有," +

                "一句话,一辈子,一生情,一杯酒。朋友不曾孤单过,一声朋友你会懂," +

                "还有伤,还有痛,还要走,还有我。";

        String[] s1 = s.split("朋友");

        System.out.println(s1.length-1));
} }

运行结果:

3

方法四:

public class Work_3_4 {

    public static void main(String[] args) {

        String s = "这些年一个人,风也过,雨也走,有过泪,有过错,"+

                " 还记得坚持甚么,真爱过才会懂,会寂寞会回首," +

                "终有梦终有你在心中。朋友一生一起走,那些日子不再有," +

                "一句话,一辈子,一生情,一杯酒。朋友不曾孤单过,一声朋友你会懂," +

                "还有伤,还有痛,还要走,还有我。";

        String key ="朋友";

        int start = s.length();

        String s1 = s.replace(key,"");

        int end = s1.length();

        int count = (start-end)/key.length();

        System.out.println(count);
} }

运行结果:

3

4. 编写敏感词过滤程序 ,说明:在网络程序中,如聊天室、聊天软件等,经常需要对一些用户所提交的聊天内容中的敏感性词语进行过滤
public class Four {

    public static void main(String[] args){

        String[] d={"枪","爆炸","恐怖"};

//        Scanner sc=new Scanner(System.in);

//        String d1=sc.next();

       String d1=new String("不要拿枪,很恐怖,会爆炸");

        for(String d2:d){

             d1=d1.replace(d2,"**");

        }

        System.out.println(d1);

    }

}

运行结果:

不要拿**,很**,会**

5. 根据输入的年份、产品类型和随机数产生固定资产编号

即:固定资产编号=年份+0+产品类型+3位随机数

程序运行流程:请输入年份:

……

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

……

生成3位随机数

最后显示固定资产编号

提示:3位随机数按如下方法产生:

(int)(Math.random()*1000);

public class Five {

    public static void main(String[] args){

        System.out.println("请输入年份:");

        Scanner s =new Scanner(System.in);

        String e=s.next();

        System.out.println("请选择产品类型:1.台式机,2.笔记本,3.其他");

        Scanner s1 =new Scanner(System.in);

        String e1=s1.next();

        int e2=(int)(Math.random()*1000);

        String e3=Integer.toString(e2);

        String e4=e.concat(e1).concat(e3);

        System.out.println("固定资产编号为:"+e4);

    }

}
运行结果:

请输入年份:

2019

请选择产品类型:1.台式机,2.笔记本,3.其他

2

固定资产编号为:20192527

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

    public static void main(String[] args){

        String h=new String("aaSdEcWq");

        char[] h1=h.toCharArray();

        StringBuffer h3=new StringBuffer();

        StringBuffer h4=new StringBuffer();

        for(char h2:h1){

            if(Character.isUpperCase(h2)){

                h3.append(h2);

                h3.append(",");

            }else if(Character.isLowerCase(h2)){

                h4.append(h2);

                h4.append(",");

            }

        }

        System.out.println(h3);

        System.out.println(h4);

    }

}

运行结果:

S,E,W,

a,a,d,c,q,

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

    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+"毫秒");

    }
}

运行结果:

21世纪所有的闰年:2000

21世纪所有的闰年:2004

21世纪所有的闰年:2008

21世纪所有的闰年:2012

21世纪所有的闰年:2016

21世纪所有的闰年:2020

21世纪所有的闰年:2024

21世纪所有的闰年:2028

21世纪所有的闰年:2032

21世纪所有的闰年:2036

21世纪所有的闰年:2040

21世纪所有的闰年:2044

21世纪所有的闰年:2048

21世纪所有的闰年:2052

21世纪所有的闰年:2056

21世纪所有的闰年:2060

21世纪所有的闰年:2064

21世纪所有的闰年:2068

21世纪所有的闰年:2072

21世纪所有的闰年:2076

21世纪所有的闰年:2080

21世纪所有的闰年:2084

21世纪所有的闰年:2088

21世纪所有的闰年:2092

21世纪所有的闰年:2096

程序运行时间为:1毫秒

Java项目案例之---常用工具类练习的更多相关文章

  1. 自己项目中PHP常用工具类大全分享

    <?php /** * 助手类 * @author www.shouce.ren * */ class Helper { /** * 判断当前服务器系统 * @return string */ ...

  2. (转)JAVA 十六个常用工具类

    一. org.apache.commons.io.IOUtils closeQuietly 关闭一个IO流.socket.或者selector且不抛出异常.通常放在finally块 toString ...

  3. 项目经验分享——Java常用工具类集合 转

    http://blog.csdn.net/xyw591238/article/details/51678525 写在前面     本文涉及的工具类部分是自己编写,另一部分是在项目里收集的.工具类涉及数 ...

  4. JAVA常用工具类汇总

    一.功能方法目录清单: 1.getString(String sSource)的功能是判断参数是否为空,为空返回"",否则返回其值: 2.getString(int iSource ...

  5. JavaEE-实验一 Java常用工具类编程

    该博客仅专为我的小伙伴提供参考而附加,没空加上代码具体解析,望各位谅解 1.  使用类String类的分割split 将字符串  “Solutions to selected exercises ca ...

  6. 简单了解Spring中常用工具类_java - JAVA

    文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 文件资源操作 Spring 定义了一个 org.springframework.core.io.Resource 接口, ...

  7. vue项目工具文件utils.js javascript常用工具类,javascript常用工具类,util.js

    vue项目工具文件utils.js :https://blog.csdn.net/Ajaxguan/article/details/79924249 javascript常用工具类,util.js : ...

  8. [转]Java常用工具类集合

    转自:http://blog.csdn.net/justdb/article/details/8653166 数据库连接工具类——仅仅获得连接对象 ConnDB.java package com.ut ...

  9. Java常用工具类之删除文件

    package com.wazn.learn.util; import java.io.File; /** * 删除文件工具类 * @author yangzhenyu * */ public cla ...

随机推荐

  1. vs2015 生成 cordova 页面中文乱码

    原文:vs2015 生成 cordova 页面中文乱码 1.用VS2015新创建Cordova项目,启动运行index.html 中文显示乱码 解决方案: 1.使用text/html通用解析编码utf ...

  2. Qt 5.9对Mac的图形显示有许多改进

    We have some platform specific improvements as well as support for new platforms and compilers comin ...

  3. Index of /android/repository

    放这里了,总是记不住... https://mirrors.zzu.edu.cn/android/repository/

  4. Git基本用法(一)

    使用Git正常的工作流 创建/修改文件 使用git add <file1> <file2> <file3>...将文件添加至本地的缓冲区Index中 使用git c ...

  5. 在VS如何查看汇编代码

    由于最近不常用,结果导致今天用的时候忘记了,╮(╯▽╰)╭.现在标记一下: 方法如下,先创建一个C++ Project,然后加入上面的代码,在main函数或者其他地方设置断点,注意是Debug版本,否 ...

  6. 还在羡慕BAT等公司的大流量的架构吗,commonrpc 是一个以netty 传输协议框架为基础(支持FTP)

    还在羡慕BAT等公司的大流量的架构吗?让你的java系统引用解耦,互相独立,commonrpc 就可以办到.commonrpc 是一个以netty 传输协议框架为基础, 自定义 spring shce ...

  7. Java Socket基础[备忘]

    1.服务端----Server.java import javax.swing.*; import java.io.*; import java.net.*; import java.awt.*; i ...

  8. DIOCP3 DEMO的编译(去掉VCL前缀)

    总有些朋友问我,关于DEMO编译的一些问题,每次都回答大概都差不多,我想还是写篇说明书给大家,关于DEMO编译的步骤. [环境设定] 1.将DIOCP3\source路径添加到Delphi的搜索路径, ...

  9. shell多线程之进程间通信(2)

    工作中往往遇到这种情况,有许多任务,依次执行比较浪费时间,由于任务之间有依赖关系,简单的并发执行又不行. 就如同下面这种情况,任务new和dvidUser是可以并发执行的,fact任务依赖于new任务 ...

  10. DNS查询命令

    dig(domain information groper)是一个在类Unix命令行模式下查询DNS,包括NS记录,A记录,MX记录等相关信息的工具 一.简单介绍使用dig命令查询DNS的方法 dig ...