您身边的网站建设专家
成功案例

【建站服务】鄄城网站建设_企业网站制作公司_高端网站设计开发-鄄城上往-域名申请

日期: 2022-09-21 05:23:07 浏览数:4


上往建站提供服务器空间服务商百度快照排名网站托管百度推广运营,致力于设计外包服务与源代码定制开发360推广搜狗推广,增加网站的能见度及访问量提升网络营销的效果,主营:网站公司,百度推广公司电话,官网搭建服务,网站服务企业排名,服务器空间,英文域名等业务,专业团队服务,效果好。


鄄城网站建设_企业网站制作公司_高端网站设计开发-鄄城上往

网站建设.png

数组实现的一个小游戏

程序随机产生5个按一定顺序排列的字符,作为猜测结果。

玩家可以猜测多次,每猜一次,若猜测的完全正确则游戏结束,并计算玩家的游戏得分并输出。若没有猜对,则提示猜测结果,如猜对了几个字符,以及猜对了几个字符的位置信息,并提示玩家游戏继续。若中途输入EXIT,则游戏提前结束

import java.util.Scanner;//猜字符小游戏public class Guessing {    private static Scanner scan;    // 主方法    public static void main(String[] args) {        scan = new Scanner(System.in);        char[] chs = generate();        System.out.println(chs);        int count = 0; // 猜错的次数        while (true) { // 自造死循环            System.out.println("猜吧!");            String str = scan.next().toUpperCase(); // 获取用户输入的字符串            if (str.equals("EXIT")) { // 判断字符串内容相等                System.out.println("下次再来吧!");                break;            }            char[] input = str.toCharArray(); // 将字符串转换为字符数组            int[] result = check(chs, input);            if (result[0] == chs.length) { // 对                int score = 100 * chs.length - 10 * count;                System.out.println("恭喜你,猜对了!得分为:" + score);                break;            } else {                count++;                System.out.println("字符对个数为:" + result[1] + ",位置对个数为:" + result[0]);            }        }    }    // 生成随机字符数组chs    public static char[] generate() {        char[] chs = new char[5];        char[] letters = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',                'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V',                'W', 'X', 'Y', 'Z' };        boolean[] flags = new boolean[letters.length];        for (int i = 0; i < chs.length; i++) {            int index;            do {                index = (int) (Math.random() * letters.length);            } while (flags[index] == true);            chs[i] = letters[index];            flags[index] = true;        }        // i=0 index=0 chs[0]='A' flags[0]=true        // i=1 index=25 chs[1]='Z' flags[25]=true        // i=2 index=0/25/0/25/1 chs[2]='B' flags[1]=true        return chs;    }    // 对比:随机字符数组chs与用户输入的字符数组input    public static int[] check(char[] chs,


数组这里有一个问题容易搞不清楚的。


在 java 中,关于数组描述正确的是( B,D )


 A.数组中的索引下标从1开始

 B.存储在数组当中的数据都属于同一数据类型

 C.通过数组名.length()能获得数组的长度

 D.数组的最大索引下标是数组的长度减1

比如说一个 int 类型的数组:


int[] arr = { 'a', 25, 45, 78, 'z' };

System.out.println(Arrays.toString(arr));

输出结果是:[97, 25, 45, 78, 122]


存放进去的 char 类型的字符会自动转为 int 类型的 ASCII 码。


上面的代码中就将 a 转成了 97,z 转成了 122。


所以数组只能存放同一类型的数据是正确的。


D选项。


数组的长度固定时,为了防止下标越界,应该在索引的时候将下标减一。


int[] arr = { 'a', 25, 45, 78, 'z' };

int arrs = arr[5];

System.out.println(Arrays.toString(arr));

System.out.println(arrs);

上面的代码中数组总长度为 5,因为数组是索引是从 0 开始取值,索引取值为5的时候就会产生下标越界异常,在这里最大的索引应当为 4。


Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5

tfbyly

   tfbyly


  905***717@qq.com


4年前 (2018-04-18)

   路过顺便打酱油


  782***197@qq.com


15

对于上面的冒泡排序,其实没必要那么复杂,最终得到的是结果,我们只需要理解冒泡排序要排多少次就可以了。比如 1-9 比较,1-2,2-3 等,需要 9 次出一个最大最小数,然后再次去比较出第二个数字,所有自然想到了嵌套循环;代码如下:


//冒泡

int[] num={2,4,9,1,6,7,9,12,63,4,87,54,67,65,4};

int totle;

for(int i=0;i<num.length;i++){

    for(int j=0;j<i;j++){

        if(num[j]>num[i]){

            totle=num[j];

            num[j]=num[i];

            num[i]=totle;

        }


鄄城网站建设_企业网站制作公司_高端网站设计开发-鄄城上往


上往建站提供搭建网站域名注册官网备案服务网店详情页设计企业网店专业网络店铺管理运营全托管公司咨询电话,服务器空间,微信公众号托管网页美工排版,致力于域名申请竞价托管软文推广全网营销,提供标准级专业技术保障,了却后顾之忧,主营:虚拟主机网站推广百度竞价托管网站建设上网建站推广服务网络公司有哪些等业务,专业团队服务,效果好。

服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)


全国咨询热线:400-111-6878

地址:全国各地都有驻点商务

Copyright © 2021 通陆科技

网站建设上往建站