A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© yes8810013 初级黑马   /  2018-11-14 20:54  /  1032 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

这半个月学了不少java基础却必不可少的知识,其中就有Scanner类与Random类,这里我想向大家分享我对这两个类的认识:
=====================================================================
Scanner类是一个可以解析基本类型和字符串的简单文本扫描器,其格式是
        Scanner sc = new Scanner(System.in);      //数据类型 变量名 = new 数据类型(参数列表)
int i = sc.nextInt();                     //变量名.方法名();    <--作用是接收一个键盘录入的整数
Random类是用来生成伪随机数,其格式是:
        Random r = new Random();                   //数据类型 变量名 = new 数据类型(参数列表)
int i = r.nextInt();                      //变量名.方法名();
这两个类的使用具体在以下的例子中说明:

定义方法 found(String str),要求如下:
        形参: String str
        返回值类型 int
        实现:从str中随机获取一个字符,将该字符打印在控制台,并且统计该字符在str中出现的次数
在main方法中完成以下要求,从控制台键盘录入一个字符串,调用found(String str)方法,在控制台输出返回的次数

=====================================================================
import java.util.Random;
import java.util.Scanner;                         //此处两行代码作用是导入Random类与Scanner类包,不导入我们无法使用这两类;
public class Upload {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);          // 构造一个新的 Scanner ,它生成的值是从指定的输入流扫描的;
System.out.println("请输入一个字符串:");
        String imput = sc.next();                   //将输入信息的下一个标记扫描为一个 int 值;
System.out.println("随机字符出现的次数是:" + found(imput));       //调用found方法,输入前面定义的字符串,并打印方法返回的值;
}


    public static int found(String str) {
        int count = 0;                              //定义一个int数据,用来表示字符出现次数;
Random random = new Random();               //创建一个新的随机数生成器;
int count1 = random.nextInt(str.length());  //返回一个伪随机数,范围在0main方法传递下来的str字符串最大长度之间。表示随机取出字符的位置;
char cha = str.toCharArray()[count1];       //定义一个char类型数据,用来表示随机获取到的字符;
System.out.println("随机字符是:" + cha);
        for (int i = 0; i < str.length(); i++) {
            if (cha == str.toCharArray()) {
                count++;
            }                                       //定义一个for循环语句,用来得到随机获取字符自str中出现的次数;
}
        return count;                               //main主方法返回值;
}
}
=============================================================================================
以上是我的小小收获,希望在接下来的日子。我能继续稳步地成长。


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马