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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© CHENSIPING 初级黑马   /  2019-1-14 21:16  /  1096 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

一、数据存储相关知识点:
  计算机最小的信息单元是bit(比特位)
  计算机最小的存储单元是Byte(字节)
  
  1Byte=8bit
  1KB=1024Byte
  1MB=1024KB
  1GB=1024MB
  1TB=1024GB
  
  
  二、计算机的常见的快捷键:
##########################注意事项:不区分大小写
                                                                        注意先切换盘符才能够进行对应文件夹的操作;
                                                                        cd后面跟上空格
        1.MS-DOS :Microsoft Disk Operating System 微软磁盘操作系统
        2.win+r → cmd  命令提示符的启动方式
        3.cd :change directory 改变目录  
        4.单级路径的进退操作:cd <文件夹名称>:进入对应文件夹  cd.. :退回至上一路径  在磁盘的根目录下使用无效
        5.多级路径的进退操作:cd d:\igpSoft\bak  cd\退回至根目录下
        6.注意tab键的使用,可以进行模糊查询的轮番切换
        7.cmd窗口下输入dir directory 目录
        8.cls =  clear screen 清空屏幕
        9.exit =退出  

三、JAVA语言的跨平台特性
        java语言的跨平台特性是通过不同平台的JVM(JAVA VIRTUAL MACHINE)来实现的:
        WINDOWS  LINUX   MAC  不通版本的JVM,上面运行同一java程序源码;
       
        跨平台的定义:一次编写,随意运行
        LINUX发行版本:centos  ubantu
        JRE:JAVA RUNTIME ENVIRONMENT java运行环境,包含jvm和java程序所需的核心类库
        JDK:JAVA DEVELOPMENT KIT JAVA开发工具包:
                                                                                        工具包:
                                                                                                        编译工具 complier编译器 编译生成.class字节码文件
                                                                                                        运行工具 explain 翻译成机器所能识别的语言
                                                                                        JRE:java runtime environment java运行环境
                                                                                                JVM  java虚拟机
                                                                                                JAVA所需的核心类库
                                                                                               
                                                                                               
                                                                                       
四、环境变量的配置:
        JAVA_HOME 系统环境变量的配置
        Path 配置jdk的路径,%<引用地址的意思>%\bin
       
五、java程序三步走:
1.编写.java文件
2.通过jdk的工具包之编译工具(complier编译器)编译生成字节码文件(.class字节码文件)  javac.exe  
3.通过jdk的工具包之运行工具(explain解释器)                 通过java.exe运行工具运行.class文件, 运行程序 java.exe

注意:javac命令需要先进入.java文件所在路径后,然后方能通过cmd,javac <文件名称.java>
          java命令需要                                                                                           java<文件名称>

注意:标识符的规范:
关键字全部小写;
对于variable变量首单词字母小写,剩余首字母大写;
对于project项目名称标识符首单词字母小写,剩余首字母大写;
对于moudle模块名称?
对于package包的名称,全部小写,多级包用点隔开,本质是folder路径;
对于class文件,单词首字母全部大写;


六:注释的说明
三种格式:
1.单行注释://<后面的内容都是注释>
2.多行注释:/*<中间都是注释>*/
3.文档注释:/**<中间都是注释>*/

public --权限修饰符
class  --java程序的基本组成单位
class 后面跟上类名,和.java的文件名保持一致,大小也保持一致
void --空
main --main方法是程序的入口,主方法


七:关键字
JAVA关键字的:被JAVA赋予了特定含义的,不能被随意使用的标识符;
关键字的特征:
                        1.完全小写的字母;
                        2.增强版的编辑器深色显示;
标识符:
                标识符的概念:自己定义的内容;
                标识符可以包含:英文26个字母, 0-9数字,下划线_ ,美元符号$(不建议使用$为标识符组成部分)
                硬性要求:不能数字开头,不能使用java的关键字(保留字)
                建议规范:
                                1.类名:首字母大写,后面的每个单词的首字母也要大写(UpperCamelCase大驼峰式)
                                2.变量名:首个单词的首字母小写,后面的单词首字母全部大写(lowerCamelCase小驼峰式)
                                3.方法名和变量名的建议规则一致;
                               
七:常量和变量的概念:
    常量:在程序运行期间,其值不发生变化的量称之为常量;
                                                                                                        分类:
                                                                                                                字符串常量:1.字符串常量:"abcd";
                                                                                                                                        2.整数常量:1;
                                                                                                                                        3.浮点数常量:1.11;
                                                                                                                                        4.字符常量:'a';  注意:两个单引号中间必须有且仅有一个字符;
                                                                                                                                        5.boolean(布尔)常量:true / false;
                                                                                                                                        6.空常量:null;没有任何数据; 注意:不能直接打印输出;
        变量:在程序的运行过程中,其值发生变化的量称之为变量;
       
       
       
       
       
八:数据类型的分类
        数据类型的分类:1:基本数据类型 (4类八种)
                                                                        整型值
                                                                                        byte :1Byte=8bit   (-128~+127)
                                                                                        short: 2Byte=16bit  (-32768~+32767)
                                                                                        int  : 4Byte=32bit  (-21,4748,3648~+21,4748,3647)
                                                                                        long : 8Byte=64bit  (-922,3372,0368,5477,5808~+922,3372,0368,5477,5807)
                                                                        浮点型
                                                                                        float 单精度:4Byte=32bit
                                                                                        double双精度:8Byte=64bit
                                                                        字符型
                                                                                        2Byte=16bit ;  char(0-65535)
                                                                        布尔型
                                                                                        boolean
                                                                                       
                                                                        大小:1 2 4 8 4 8 2 1 个字节
                                                                       
                                                                        注意:
                                                                                  1.字符串不是基本数据类型:字符串是引用数据类型
                                                                                  2.浮点数可能只是一个近似值,并非精确值;
                                                                                  为什么说浮点数是一个近似值而非精确值?
                                                                                        数据在计算机中都是以二进制的形式存储的;
                                                                                                        A:十进制整数转换为二进制
                                                                                                                                                        除2取余,逆序排列;
                                                                                                        B:负的十进制整数转换为二进制
                                                                                                                                                        源码:绝对值 求二进制
                                                                                                                                                        反码:绝对值的二进制数按位取反
                                                                                                                                                        补码:反码+1 ;
                                                                                                                                                       
                                                                                                                                                        tips:十进制正数的补码是源码本身;
                                                                                                                                                       
                                                                                  3.数据的精度(取值范围)和占用的字节数不一定正相关,因为还和表示法有关,科学计数法省空间;
                                                                                        例如float的数据范围比long更加广泛,但是float占用的字节数是4,但是long类型占用的是8个字节;
                                                                                       
                                                                                  4.浮点数中默认类型是double类型,如果一定要使用float类型,建议加上F
                                                                                    整数类型默认为int类型,如果要使用long类型,建议加上L;
                                                                                  
                                        2:引用数据类型:
                                                                        1.接口(inerface)
                                                                        2.数组(array)
                                                                        3.类()
                                                                        4.字符串
                                                                       
                                                       
九:变量的概念和定义:
        变量:在程序运行过程中,内容可以发生变化的量;   --相当于容器;
        定义:
        第一种格式:
        1.<数据类型><变量名称><;>  其实分为2步:1.变量申明; 2. 初始化(赋值);
        2. 变量的赋值:<变量名称>=<数据值>;  赋值:将右边的数据值,赋值交给左边的变量;
       
        第二种格式:
        或者:数据类型 变量名=数据值;  在创建一个变量的同时,立刻放入指定的数据值;
       
       
十:变量的基本使用:(基本数据类型:输出的是变量的内容) 可以进行数据值的传递;int num1=100; int num2=num1;
                                        (引用数据类型:输出的是变量的地址)
        定义变量过程中注意:

        1. 如果创建多个变量时,那么变量之间的名称不能重复
        2. 定义long或者float类型的变量时数据值后需要加上L或者F;
                long num1=100L;
                float num2=2.33F;
        3. 定义byte类型或者short类型变量时需要注意右侧的数据值不要超过变量的取值范围;
        4. 没有赋值的变量不能直接被使用;
        5. 变量的作用域:从定义的位置开始,到所属的那对大括号截止;










十一:
byte数据类型的比特位:8
byte数据类型的取值范围:-128~127
-----------------------
short数据类型的比特位:16
short数据类型的取值范围:-32768~32767
-----------------------
int数据类型的比特位:32
int数据类型的取值范围:-2147483648~2147483647
----------------------
long数据类型的比特位:64
long数据类型的取值范围:-9223372036854775808~9223372036854775807
------------------------
float类型数据的比特位:32
float数据类型的取值范围:1.4E-45~3.4028235E38
-------------------------
double类型数据的比特位:64
double数据类型的取值范围:4.9E-324~1.7976931348623157E308
-------------------------
char数据类型的比特位:16
char数据类型的取值范围:0~65535
---------------------------
boolean数据类型的比特位:8
boolean数据类型的取值范围:true  false


package my.java;

public class PrimitiveTypeDemo {
        public static void main(String[] args) {
                //byte类型的数据比特位,最小,最大
                System.out.println("byte数据类型的比特位:"+Byte.SIZE);
                System.out.println("byte数据类型的取值范围:"+Byte.MIN_VALUE+"~"+Byte.MAX_VALUE);
               
                System.out.println("-----------------------");
               
                //short类型的数据比特位,最小,最大
                System.out.println("short数据类型的比特位:"+Short.SIZE);
                System.out.println("short数据类型的取值范围:"+Short.MIN_VALUE+"~"+Short.MAX_VALUE);
               
                //输出int类型的数据比特位,最小,最大
                System.out.println("-----------------------");
                System.out.println("int数据类型的比特位:"+Integer.SIZE);
                System.out.println("int数据类型的取值范围:"+Integer.MIN_VALUE+"~"+Integer.MAX_VALUE);
               
                //输出long数据类型的数据比特位,最小,最大
                System.out.println("----------------------");
                System.out.println("long数据类型的比特位:"+Long.SIZE);
                System.out.println("long数据类型的取值范围:"+Long.MIN_VALUE+"~"+Long.MAX_VALUE);
               
                //输出float类型的数据比特位,最小,最大
                System.out.println("------------------------");
                System.out.println("float类型数据的比特位:"+Float.SIZE);
                System.out.println("float数据类型的取值范围:"+Float.MIN_VALUE+"~"+Float.MAX_VALUE);
               
                //输出double类型的数据比特位,最小,最大
                System.out.println("-------------------------");
                System.out.println("double类型数据的比特位:"+Double.SIZE);
                System.out.println("double数据类型的取值范围:"+Double.MIN_VALUE+"~"+Double.MAX_VALUE);
               
                //输出char类型的数据比特位,最小,最大
                System.out.println("-------------------------");
                System.out.println("char数据类型的比特位:"+Character.SIZE);
                System.out.println("char数据类型的取值范围:"+(int)Character.MIN_VALUE+"~"+(int)Character.MAX_VALUE);
               
                //输出boolean数据类型比特位,最小,最大
                System.out.println("---------------------------");
                System.out.println("boolean数据类型的比特位:"+"8");
        }
}
























        一、
        流程分类:顺序结构:
                                                代码执行顺序:从上至下依次执行;
                          判断语句(选择结构/分支结构):
                                                1. 单 if 语句:
                                                if(关系表达式/判断条件){
                                                        语句体;
                                                }
                                                2. 标准的 if else 语句格式if else:
                                                        if(关系表达式/判断条件){
                                                                语句体1;
                                                        }
                                                        else{
                                                                语句体2;
                                                        }
                                                       
                                                        应用:判断奇偶性
                                                        if(number%2==0){
                                                                System.out.println("偶数");
                                                        }
                                                        else{
                                                                System.out.println("奇数");
                                                        }
                                                       
                                                        int a=10;
                                                        String str=a%2==0?"偶数":"奇数";
                                                        System.out.println(str);//偶数;
                                                       
                                                        三元运算符:
                                                        数据类型 变量名=关系表达式?表达式1:表达式2;
                                                       
                                                        注意:在某些简单的应用中, if else 语句可以和三元运算符等价,可以根据实际的情况予以选择;
                                                       
                                                3. if...else if...else;
                                                扩展的if else语句格式:(if else的扩展格式)
                                                if(判断条件1){
                                                        语句体1;
                                                }
                                                else if(判断条件2){
                                                        语句体2;
                                                }
                                                ...............
                                               
                                                else if(判断条件n){
                                                        语句体n;
                                                }
                                                else{
                                                        语句体n+1;
                                                }
                                               
                                               
                                                案例演示:
                                                public class IfElseExtDemo {
                                                public static void main(String[] args) {
                                                        while (true) {
                                                                System.out.println("请输入成绩:");
                                                                Scanner sc = new Scanner(System.in);
                                                                int score = sc.nextInt();
                                                                //开始使用if else语句的扩展格式进行成绩判断
                                                                if (score > 100 || score < 0) {
                                                                        System.out.println("非法的输入");
                                                                } else if (score >= 90 && score <= 100) {
                                                                        System.out.println("成绩优秀");
                                                                } else if (score >= 80 && score < 90) {
                                                                        System.out.println("成绩好");
                                                                } else if (score >= 70 && score < 80) {
                                                                        System.out.println("成绩良好");
                                                                } else if (score >= 60 && score < 70) {
                                                                        System.out.println("成绩合格");
                                                                } else {
                                                                        System.out.println("成绩不及格");
                                                                }
                                                        }
                                                }
                                        }
                                       
                                        注意:当 if else 语句执行到第一个关系表达式结果为true时,后面的不再执行,如果所有的判断条件都是false那么,程序将执行else对应的语句体n+1;
                                       
                                       
                                        选择语句  格式:---switch语句的标准格式:
                                        switch(表达式){
                                                case 常量值1:
                                                  语句体1;
                                                  break;
                                                case 常量值2:
                                                  语句体2;
                                                  break;
                                                .
                                                .
                                                .
                                                default:
                                                        语句体n+1;
                                                        break;//break可以省略,但是不建议;
                                        }
                                       
                                        执行流程:首先计算表达式的值-->然后拿表达式的结果与case后面跟的常量值进行匹配,一旦有对应的值与之匹配,那么程序将执行对应的语句体,直到遇到break就结束;
                                        如果所有的case后面的常量值与表达式的值都不匹配,那么程序将执行default(默认):后面的语句体: n+1 ,直到遇到break或者switch语句结束为止;
                                        注意:程序遇到第一个break或者switch语句整体结束,那么程序就结束了;
                                       
                                        案列演示:
                                       
                                                import java.util.Scanner;
                                                public class DayTest{
                                                        public static void main(String []args){
                                                                Scanner sc=new Scanner(System.in);
                                                                System.out.println("请输入数据值:");
                                                                int number=sc.nextInt();
                                                                switch(number){
                                                                        case 1:
                                                                                System.out.println("星期一");
                                                                                break;
                                                                        case 2:
                                                                                System.out.println("星期二");
                                                                                break;
                                                                        case 3:
                                                                                System.out.println("星期三");
                                                                                break;
                                                                        case 4:
                                                                                System.out.println("星期四");
                                                                                break;
                                                                        case 5:
                                                                                System.out.println("星期五");
                                                                                break;
                                                                        case 6:
                                                                                System.out.println("星期六");
                                                                                break;
                                                                        case 7:
                                                                                System.out.println("星期日");
                                                                                break;
                                                                        default:
                                                                                System.out.println("输入有误");
                                                                                break;
                                                                }
                                                        }
                                                }
                                               
                                注意事项:
                                1. 多个case后面的常量值不可以重复; //报错,case标签重复;
                                2. switch 后面的小括号当中只能是以下数据类型:
                                                基本数据类型:byte short char int
                                                引用数据类:
                                                jdk5以后支持enum枚举类型;
                                                jdk7以后支持字符串类型;
                                3. switch语句的格式可以很灵活:前后的顺序可以颠倒(甚至default也可以不在最后面),而且break可以省略;
                                匹配哪一个case就从哪一个位置向下执行,直到遇到了break或者代码整体结束为止;
                                                switch 语句中 case 的穿透原理;没有遇到break且代码整体没有结束,穿透:*****
                                                在switch语句中,如果case后面没写break,那么将出现case穿透现象,解释:程序将继续执行,而不判断下一个case后面的常量值是否与表达式匹配,直到遇到break,或者整体switch语句结束;
                               
                               
                        循环结构:
                                循环语句的三种形式:
                                                  1. for(<①初始化语句>;<②判断条件语句>;<④控制条件语句/步进语句>){
                                                                  <③循环体>;
                                                          }
                                                          
                                                          解释:
                                                                        1. 初始化语句:在循环开始最初执行,而且只做唯一一次;
                                                                        2. 判断条件语句:如果true则执行循环体,否则循环结束;
                                                                        3. 循环体:需要计算机重复做的代码块;
                                                                        4. 控制条件语句(步进语句(单步动作/步进));
                                                                       
                                                                        public class Test{
                                                                                public static void main(String []args){
                                                                                        int sum=0;
                                                                                        for(int i=1;i<=100;i++){
                                                                                                sum+=i;
                                                                                        }
                                                                                        System.out.println("sum="+sum);
                                                                                }
                                                                        }
                                                                       
                                                               
                                                        2. while 循环:
                                                         
                                                         标准的while语句格式:
                                                         while(<①判断条件语句>){
                                                                 <②循环体>;
                                                         }
                                                               
                                                         扩展的while语句格式:
                                                          <①初始化语句>;
                                                          while(<②判断条件语句>){
                                                                  <③循环体>;
                                                                  <④步进语句/控制条件语句>;
                                                          }
                                                          
                                                          for循环可以转换为while循环;
                                                          public class Test{
                                                                  public static void main(String[]args){
                                                                          int i=1;//初始化语句
                                                                          int sum=0;
                                                                          while(i<=100){//判断条件语句
                                                                                  sum+=i;//循环体
                                                                                  i++;//控制条件语句/步进语句/步进/单步动作
                                                                          }
                                                                  }
                                                          }
                                                          
                                                        3. do_while 循环:
                                                     
                                                          标准格式:       
                                                                                do{
                                                                                        循环体;
                                                                                }while(判断条件语句);
                                                          扩展格式:
                                                                                初始化语句;
                                                                                do{
                                                                                        循环体;
                                                                                        步进语句(控制条件语句);
                                                                                }while(判断条件语句);
                                                        注意:do while循环的循环体至少被执行一次;
                                                       
                                                       
                                                        案例练习:
                                                        //求1-100之间的偶数和 for循环格式求和
                                                        public class getSum{
                                                                public static void main(String []args){
                                                                        int sum=0;
                                                                        for(int i=1;i<=100;i++){
                                                                                if(i%2==0){//如果是偶数
                                                                                        sum+=i;//累加
                                                                                }
                                                                        }
                                                                        System.out.println("sum="+sum);
                                                                }
                                                        }
                                                       
                                                        //求1-100之间的偶数和 while循环格式求和
                                                        public class getSum{
                                                                public static void main(String []args){
                                                                        int i=1;
                                                                        int sum=0;//累和变量初始为0;
                                                                        while(i<=100){
                                                                                if(i%2==0){
                                                                                        sum+=i;
                                                                                }
                                                                                i++;//控制条件语句/步进语句
                                                                        }
                                                                        System.out.println("sum="+sum);
                                                                }
                                                        }
                                                       
                                                       
                                                        //求1-100之间的偶数求和 do_while循环格式求和
                                                        public class getSum{
                                                                public static void main(String[]args){
                                                                        int sum=0;//累和变量初始为0;
                                                                        int i=1;//初始化语句
                                                                        do{
                                                                                if(i%2==0){
                                                                                        sum+=i;
                                                                                }
                                                                                i++;//控制条件语句/步进语句
                                                                        }while(i<=100);//判断条件语句
                                                                        System.out.println("sum="+sum);
                                                                }
                                                        }

                                                       
                        三种循环的区别:
                        1. 如果判断条件语句从来都没有成立过,那么for循环和while循环执行的次数0,但是do while循环至少执行一次;
                        2. for 循环的变量在小括号当中定义,只有循环内部才可以使用。while/do_while循环的初始化语句定义在循环体外面,那么出了循环之后,初始化语句中定义的变量仍可以被访问;
                       
                       
                        推荐使用:如果有固定的次数,推荐使用for循环;
                                          如果循环次数不确定,推荐使用while循环;
                                          其它使用do_while循环,使用优先级最低;


       六、流程(跳转)控制语句:
                                                break;
                                                1. 可以用在switch语句当中,一旦执行,整个switch语句立刻结束;
                                                2. 还可以用在循环语句当中,一旦执行,整个循环语句立刻结束,打断循环;(结束(中断/打断/打破)整个循环)
                                               
                                                continue;
                                                1. 结束本轮循环,下一轮循环还要继续;
                                                        一旦执行,立刻跳过当前次循环剩余内容(部分),马上开始下一次循环;(但是步进语句/控制条件语句还需要执行)
                                                        案例:
                                                        public class Test_02 {
                                                        public static void main(String[] args) {
                                                                for(int i=1;i<=10;i++){
                                                                        if(i==4){
                                                                                continue;
                                                                        }
                                                                        System.out.println(i+"楼到了");
                                                                }
                                                        }
                                                }
                                               
                                               
                                死循环:
                                public class DemoDeadLoop{
                                        public static void main(String[]args){
                                                for(int i=1;i<=10;i++){//步进语句/控制条件语句没有被执行,那么就是死循环
                                                        System.out.println("i="+i);
                                                }
                                        }
                                }
                               
                                死循环的标准格式:
                               
                                格式1:
                                    while(true){//死循环
                                                循环体;
                                               
                                                if(关系表达式){
                                                        break;//死循环的跳转控制语句之break,跳出死循环;
                                                }
                                        }
                                               
                                格式2:
                                        for(;;){
                                                循环体;//for 循环格式的死循环;
                                        }
                                               
                                               
                                               
                                循环的嵌套:
                                                for(int h=0;h<24;h++){
                                                        for(int m=0;m<60;m++){
                                                                System.out.println(h+":"+m);
                                                        }
                                                }
                                                循环的嵌套,可以理解为内嵌套循环为循环体即可;
                                               
                               
                                               
                                               
                                               
                                               
                                               
                                               
                                               
                                               
                                               
                                               
                                               
                                               
                                               
                                               
                                               
       

1 个回复

倒序浏览
总结非常详细
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马