猜数字游戏(Random、Scanner)、统计字符个数(String)

猜数字游戏

Random类

  • 此类的实例用于生成伪随机数,例如,一下代码使用户能得到一个随机数
		//创建Random对象
        Random random = new Random();
        //生成一个0-100的数
        int a=random.nextInt(100)+1;

  • java.util.Random:该类需要import导入后,才能使用

构造方法

  • public Random():创建一个新的随机数生成器

成员方法

  • public int nextInt(int n):返回一个伪随机数,范围在0(包括)和指定值n(不包括)之间的int值

Scanner类

  • 一个可以解析基本类型和字符串的简单文本扫描器,以下代码使用户能够从System.in中读取一个数
			//创建Scanner类
            Scanner scanner = new Scanner(System.in);
            int b=scanner.nextInt();

  • java.util.Scanner:该类要导入后才能使用

构造方法

  • public Scanner(InputStream source):构造一个新的Scanner,它生成的值是从指定的输入流扫描的

成员方法

  • public int nextInt():将输入信息的下一个标记扫描为一个int值

游戏开始时,会随机生成一个1-100之间的整数 number 。玩家猜测一个数字 ,会与 number 作比
较,系统提示大了或者小了,直到玩家猜中,游戏结束。

实现代码

public class text01random {
    public static void main(String[] args) {
        //创建Random对象
        Random random = new Random();
        //生成一个0-100的数
        int a=random.nextInt(100)+1;
        System.out.println("猜数字游戏开始,数字范围为1—100");
        //一直循环
        while(true){
            //创建Scanner类
            Scanner scanner = new Scanner(System.in);
            int b=scanner.nextInt();
            if(b>a){
                System.out.println("猜大了");

            }else if(b<a){
                System.out.println("猜小了");

            }else{
                System.out.println("猜对了,数字为:"+a);
                //直到猜对才跳出循环
                break;
            }

        }
    }
}

运行结果

在这里插入图片描述

统计字符个数

String类

代表字符串类代表字符串。Java程序中所有的字符串文字(例如 “abc” )都可以被看作是实现此类的实

特点

  • 字符串不变:字符串的值在创建后不能被更改
  • 因为String对象是不可变的,所以它们可以被共享
  • “abc” 等效于 char[] data={ ‘a’ , ‘b’ , ‘c’ } 。String底层是靠字符数组实现的

java.lang.String :此类不需要导入。

构造方法

public String() :初始化新创建的 String对象,以使其表示空字符序列。
public String(char[] value) :通过当前参数中的字符数组来构造新的String。
public String(byte[] bytes) :通过使用平台的默认字符集解码当前参数中的字节数组来构造新的
String。

常用方法

判断功能的方法

public boolean equals (Object anObject) :将此字符串与指定对象进行比较。
public boolean equalsIgnoreCase (String anotherString) :将此字符串与指定对象进行比较,忽略大小
写。

获取功能的方法

public int length () :返回此字符串的长度。
public String concat (String str) :将指定的字符串连接到该字符串的末尾。
public char charAt (int index) :返回指定索引处的 char值。
public int indexOf (String str) :返回指定子字符串第一次出现在该字符串内的索引。
public String substring (int beginIndex) :返回一个子字符串,从beginIndex开始截取字符串到字符
串结尾。
public String substring (int beginIndex, int endIndex) :返回一个子字符串,从beginIndex到
endIndex截取字符串。含beginIndex,不含endIndex

实现代码

public class StringText2 {
    public static void main(String[] args) {
        //创建Scanner对象
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一串字符(只包含大小写和数字)");
        //从键盘录入字符串
        String s=sc.nextLine();
        int bigCount=0;
        int smallCount=0;
        int num=0;
        for(int i=0;i<s.length();i++){
            char ch=s.charAt(i);
            if(ch>='a'&&ch<='z'){
                smallCount++;
            }else if(ch>='A'&&ch<='Z'){
                bigCount++;
            }else{
                num++;
            }
        }
        System.out.println("大写字母有:"+bigCount+"个");
        System.out.println("小写字母有:"+smallCount+"个");
        System.out.println("数字有:"+num+"个");
    }
}

运行结果

在这里插入图片描述
如果你想用Java模拟斗地主,完成洗牌发牌操作,可以看这篇文章

https://blog.csdn.net/illusory_germ/article/details/89817998
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值