美文网首页
8.06 集训第八天 【Android studio入门】

8.06 集训第八天 【Android studio入门】

作者: 草莓灵啾啾 | 来源:发表于2019-08-07 07:59 被阅读0次

    今日目标

    将之前的demo转移到Android studio上实现

    学习内容

    • 类:Contact[姓名 地址 email 电话号码]
      java里面除了八大基本数据类型(byte char boolean short int long double float)外都是对象 抽象的 不实际存在 描述同一类实物(具有共同的属性和方法)
      例如:人类->抽象的 不是就存在的 不能完成具体的事情
      类就是封装
    • 封装:
      把私有的东西封装起来 不让外部使用
      需要给外部用 就暴露出来
      访问权限:public private protected
      public:公共的 想用就用/内部可以使用 外部也可
      private:私有 只能自己使用 外部无法访问
      protected:受保护的 外部(同一个包)可以访问
    • 定义一个类 通常情况下一个文件对应一个类
      public static final
      修饰符 class 类名{
      这个类的一些属性:成员变量
      这个类的功能:方法
    • 对象:通过new产生
      具体的 实际存在的 某一类的实例化
      可以完成具体的事情->有内存空间
      例如:小王:具体存在 可以使用的
      同一个类可以有多个对象
    • 方法 indexOf
      用来判断一个字符串中时都有某个字符或者字符串,有的话就返回字符的起始位置(0表示第一个字符),没有的话就返回-1
      org[i]表示从第org[i]个开始找起
    int index = indexOf(guess,org[i]);
    
    • 方法 sort
      可以对基本数据类型、数组、包装类类型进行升序排序(默认为升序)
      格式:Arrays.sort(数组名)
    Scanner sc=new Scanner(System.in);
    int num={5,4,3,2,1};
    Arrays.sort(num) ;
    for(int i=0;i<5;i++){
    System.out.println(num[i]);}
    
    • 方法 toString
      将任何对象转换成字符串表达形式,就是用文字描述这个对象里各个变量是什么值,这个变量是什么类型的变量等

    实际操作

    class GuessNumber{
    
        public static void main(String[] args){
            //保持原始数字
            int[] org=new int[4];
            //产生四个随机数
            int[] guess=new int[4];
            Random random=new Random();
            for(int i=0;i<4;i++){
                int temp=random.nextInt(10);
                //判断是否存在
                boolean result= contains(org,temp);
                if(result){
                    //确保i对应的位置能够得到一个不重复的位置
                    i--;
                }
                else{
                    org[i]=temp;
                }
            }
            //排序
            Arrays.sort(org);
            System.out.println(Arrays.toString(org));
           Scanner scanner=new scanner(System.in);
            while(true){
                int countA=0;
                int countB=0;
                System.out.print("请输入猜测的数字:");
                for(int i=0;i<4;i++){
                    guess[i]=scanner.nextInt();
                }
                //判断用户输入
                //1.判断是否存在
                for(int i=0;i<4;i++){
                    boolean result=contains(guess,org[i]);
                    if(result==true){
    
                        //数字存在
                        //判断位置是否相同
                       int index = indexOf(guess,org[i]);
                       System.out.println("i:"+i+" index:"+index);
                        if(index==i){
                            //数字和位置都相同
                            countA++;
                        }
                        else{countB++;
                        }
    
                    }
                }
                if(countA==4){
                    System.out.println("恭喜全对");
                    break;
                }
                else{
                    System.out.println(countA+"A"+countB+"B");
                }
            }
    
        }
    
    
        public static boolean contains(int[] val,int obj){
            for(int i=0;i<val.length;i++){
                if(val[i]==obj){
                    //重复了
                    return true;
                }
    
            }
            return false;
        }
    
    }
    

    心得体会

    同一个demo用Java比用C语言做的过程要简便得多

    顺便,七夕到了,FFF团出动,|˄·͈༝·͈˄₎.。oO

    相关文章

      网友评论

          本文标题:8.06 集训第八天 【Android studio入门】

          本文链接:https://www.haomeiwen.com/subject/mrvgdctx.html