Java定义总结复习

    /* 
             * 一、
             * char int 
             *结果为int 类型
             *char float 
             *结果为float
             *char int flaot
             *结果为flaot
             *有多种类型的数据混合运算时,
            系统首先自动将所有数据转换成容量最大的那种数据类型,然后再进行计算。
             *
             *byte,short,char之间不会相互转换,他们三者在计算时首先转换为int类型
             *1.自动类型

            小类型赋值给大类型,自动类型转换

            如果运算类型的混合运算,转换为最大的类型,运算

            2.强制类型转换

            将容量大的数据转换为容量小的数据

            格式:(类型)变量

             *可能造成精度的降低或溢出

            (int)3.14 = 3

            char 有限 55555――溢出
             */
     

            int i;
            i=5;
            System.out.println(i);

        System.out.println(12.0%3);
        
        /*
         * 二、
         * &&:左右两侧都为真结果为真,只要有一侧为假,结果为假
        ||:只要有一假为真,结果为真
        !:取反
        ^:相同为假 ,不同为真
        
        *区别
        一个&:无论左边是真是假,右边都要参与运算
        两个&:如果左边为假,(结果为假),右侧不再参与运算
        
        单 |:无论左侧真假,右侧都要进行运算
        双||:如果左侧为真(结果为真),右侧不再参与运算


         */
/*
 * (1)nextInt():作用输入一个基本整形int
(2)nextFloat() nextDouble()
(3)next():在遇到空格 回车 TAB停止读入 读入字符串
nextLine():只在回车时停止读入  读入字符串
 */
        
        
        //三、
        //随机数

                System.out.println((int)(Math.random()*90) + 10);//[0.0  1.0)  [0  90)  10  99

            
/*
 * 四、
 * flag = (year%4==0 && year%100!=0) || (year%400 == 0);//??? year = 2000 2000%400= 0  == 0 true
 * //flag = true 闰年         29

    //flag = flase 非闰年    28
        
 */
                //五、求最大公约数、最小公倍数
                Scanner sc = new Scanner(System.in);

                int m = 12 , n = 18;

                int t = m * n;//216
//                System.out.println(t);

                int k = m % n;//12
//                System.out.println(k);

                while(k!=0) {

                    m = n;

                    n = k;

                    k = m%n;

                }

                System.out.println(n);//求最大公约数

                System.out.println(t/n);//求最小公倍数
                
                //六、输入一个数的个位、十位、百位
                for(int i1=100; i1<=999; i1++) {

                    int ge = i1%10;

                    int bai = i1/100;

                    int shi = i1/10%10;
                    
                
                //七、九九乘法表
                    for(int i2=1;i2<10;i2++) {

                        for(int k1=1; k1<=i2;k1++) {

                            System.out.print(k1 + "*" + i2 + "=" + k1*i2 + "\t");

                        }

                        System.out.println();

                    }
                    
            //七、判断是否为素数
                    //2 3 5 7 

                    //5是否是质数  2 3 4

                    //9  2 3 4 5 6 7 8

                    //9   2   3  4   5  7  8 

                    int count = 0;

                    int sum = 0;

                    boolean flag = true;

                    for(int i1=2; i1<=100; i1++) {

                        flag = true;

                        for(int k1=2; k1<=i1-1; k1++) {

                            if(i1%k1 == 0) {

                                flag = false;//flag 一直是false

                                break;

                            }

                        }

                        

                        if(flag == true ) {

                            System.out.println("质数为:" +i1);

                            count++;

                        }

                        

                        sum += i1;

                    }

                    

                    System.out.println("数量为:" + count);

                    System.out.println("所有质数的和为:" + sum);


                }
                
                //八、一维数组
                /* 1.一维数组的声明
                 * 2.一维数组的初始(动态 静态):长度固定
                 * 3.如何调用指定位置的元素
                 * 4.如何获取数组的长度
                 * 5.遍历数组
                 * 5.1 下标法
                 * 5.2 foreach法
                 * 
                 * 6.默认初始化值
                 */
                //1.一维数组的声明

                //(1)C语言常用 的定义方法

                int arr01[] = new int[5];//类型  数组名  []  长度  

                //下标  arr01[0]  arr01[4]

                //(2)JAVA使用的定义方法

                int[] arr02 = new int[10];

                float[] arr03 = new float[5];

                String[] arr04 = new String[10];
                
                //数组长度:数组名.length
                
                
                //数组遍历两种方法
                String[] fruits = {"苹果" , "香蕉" , "梨子" , "火龙果" , "西瓜"};


                //1.使用下标法

                for(int z=0; z<fruits.length; z++) {

                    System.out.print(fruits[z] + "\t");

                }

                

                //2.foreach

                System.out.println();

                System.out.println("************************");

                for(String str: fruits) {

                    System.out.print(str + "\t");

                }

                

                System.out.println();
                
                //利用数组求学生成绩
                System.out.print("请输入学生人数:");

                  Scanner sc1 = new Scanner(System.in);

                  int n1 = sc1.nextInt();

                  System.out.println("请输入" + n1 + "个成绩:");

                  int a[] = new int[n1];

                  for(int i1 = 0; i1 < a.length; i1++) {

                   a[i1] = sc1.nextInt();

                  }

                  int max = 0;

                  for(int i1 = 0; i1 < a.length; i1++) {

                   if(a[i1] > max) {

                    max = a[i1]; 

                   }

                  }

                  System.out.println("最高分是:" + max);

                  char g;

                  for(int i1 = 0; i1 < a.length; i1++) {

                   if(a[i1] >=max - 10) {

                    g = 'A';

                   }else if(a[i1] >=max - 20) {

                    g = 'B';

                   }

                   else if(a[i1] >=max - 30) {

                    g = 'C';

                   }

                   else {

                    g = 'D';

                   }

                   System.out.println("    student" + i1 + " score is " + a[i1] + "grade=" + g);

                  }
                  
                  //九、method中的方法
                //自定义的方法只能通过调用方可执行,自己无法执行
                //自定义和main平行的关系,不能嵌套

                    //addMethod

                //    addMethod(5.5 , 9.9);//实参 -->  形参
                //    System.out.println(addMethod02(5.5 , 9.9));
                  
                  
                  
                //十、重载  
                  
                  /*
                  * 1.重载的概念
                  * 指在同一个类中,出现一个及以上的同名方法,参数不同就可以:(1)数量不同(2)类型不同
                  * 2.重载的特点
                  * 与返回值的类型无关,与参数有关(只要符合方法名相同,参数不同--> 重载)
                  * 3.重载的优点
                  * 便于阅读,优化了程序的设计
                  * 4.注意
                  * 方法与变量一样也需要先定义后使用
                  */
                  
                  
                  //十一、面向对象
                  /* 1.面向对象概念
                  * 面向对象是相对于相向过程而言。
                  * 面向过程强调的是功能行为
                  * 面向对象,将这样的功能行为,封装进了对象中
                  *
                  * 2.特点
                  * 封装
                  * 继承
                  * 多态
                  *
                  * 3.面向对象的设计思想
                  * 对象,如果对象不存在创建这样的对象
                  *
                  * 4.类和对象是面向对象的核心概念
                  * 类:是对一类事物的描述,是抽象上的、概念上的定义
                  * 对象:实例,是该类事物的个体
                  * 万事万物皆对象
                  *
                  * 同学(对象)
                  * 人:类
                  *
                  * 只要是对象就具备属性和行为
                  * 对象:用来描述客观事物的一个实体
                  * 属性:所具有的特征(name age pro sex tel )
                  * 行为:执行的操作(学习 吃饭 运动 娱乐 休息)
                  *
                  * 类:是具有相同属性和相同方法的对象的集合
                  * 类是对象的抽象是概念似的
                  *
                  * 5.类的定义语法
                  * 修饰符 class 类名{
                  * 变量定义属性;
                  * 方法定义行为;
                  * }
                  * (1)修饰符:public
                  * (2)关键字class:含义说明定义的是一个类
                  * (3)类名:正确的命名规则;工程驼峰式命名
                  */


                  /*6.定义类的步骤
                  * 1.定义类(考虑修饰符、类名)
                  2.编写类的属性(考虑修饰符、属性类型、属性名、初始化值)
                  3.编写类的方法(考虑修饰符、返回值类型、方法名、形参等)

                  */
                  
                  
                  /*

                   * 如何创建对象

                   * 语法格式

                   *     类名  对象名 = new 类名();

                   * 通过对象调用属性和方法的语法格式

                   *     对象名.属性名

                   *     对象名.方法名 

                   */
                  /*PersonTest
                   * Person p1 = new Person();//创建对象

        //1.姓名  性别  年龄   民族   tel

        //2.吃饭  休息   娱乐  print

        //调用类中的属性,类中的方法

        p1.name = "张晓明";

        p1.age = 18;

        p1.sex = 'M';

        p1.tel = "13888888888";

        p1.nation = "汉族";

        

        //调用方法

        p1.print();//输出个人信息

        p1.eat();

        p1.eat("面条");//实参

        p1.eat("面包");//"    "

        p1.relax();

        p1.fun();//无参方法

        p1.fun("看电影");//重载 

        p1.fun("打篮球");

        p1.fun("唱歌" , "打游戏");

        

        System.out.println("*******************");
                   */
                  
                  
                  /* 类:具有相同属性和相同方法的集合(概念、抽象)
                  *
                  * 构造器:可以对变量进行快速的初始的化
                  * 1.如何定义
                  * 它具有与类相同的名称
                  * 它不声明返回值类型。(与声明为void不同)
                  * 不能被static、final、synchronized、abstract、native修饰,不能有return语句返回值
                  *
                  * 2.注意事项
                  * Java语言中,每个类系统都至少有一个无参构造器
                  * 默认构造器的修饰符与所属类的修饰符一致
                  * 一旦显式定义了构造器,则系统不再提供默认构造器
                  在new对象时,由JVM自动的调用构造器
                  */
                  
                  
                  /*

                   * 成员变量:在方法体外、类内部定义的变量称为成员变量

                   * 局部变量:在方法体内定义的变量称为局部变量

                   */
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值