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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

一.Java基础语法
1.Jdk环境搭建
(1)JDK是Java开发环境集【Java Development Kit】
①JAVA_HOME:填写Jdk的安装目录       
②Path:在变量值最后输入%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
③CLASSPATH :.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
检验是否配置成功 :运行cmd 输入 java -version (java 和 -version 之间有空格)
(2)Jre是Java运行环境【Java runtime environment】
(3)Ivm是Java虚拟机【Java Virtual Machine】
★ 三者关系如下:JDK > JRE > JVM2.

2.入门案例
public class Demo {
    public static void main(String[] args) {
        System.out.println("Hello-World!");
    }
}

3.Java数据类型
(1)基础数据类型(四类八种)不能为null

整型 : 【byte short int long 】
浮点类型 【单精度 float】 【双精度 double】
布尔类型 【boolean true和false(默认)】
字符类型 【char】
基本数据类型之间的比较:

基本数据类型        大小             最小值            最大值              包装数据类型
byte          1 个字节(1*8 位)     -2^7            2^7 - 1            Byte
short         2 个字节(2*8 位)     -2^15           2^15-1             Short
int           4 个字节(4*8 位)     -2^31           2^31-1           Integer
long          8 个字节(8*8 位)     -2^63           2^63 - 1           Long
boolean - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Boolean
char          2 个字节(2*8 位)       0             2^16 - 1     Character
float         4 个字节(4*8 位)     1.4E - 45      3.4028235E38       Float
double        8 个字节(8*8 位)     4.9E – 324    1.7976931348623157E308   Double

(2)引用数据类型可以=null

类 (Class)
预定义的类:官方定义好的类,拿来就可以使用,无需再次创建
自定义的类:官方没有定义的类,只能够自己创建

接口 (Interface)
预定义的接口:官方定义好的接口,拿来就可以使用,无需再次创建
自定义的接口:官方没有定义的类,只能够自己创建

数组 (Array)

枚举 (Enumeration)

4.关键字
(1)用于数据类型
int 、 byte 、 short 、 long 、 char 、 boolean 、 float 、 double 、 true 、 false 、  new 、  void 、 instanceof

(2)用于语句
break 、 continue 、 switch 、 case 、 default 、 catch 、 do 、 while 、 else 、 if  、 for  return 、 try 、 finally 、 throw 、 this 、 super

(3)用于修饰
private 、 public 、 static 、 protected 、 final 、 abstract 、 native 、 synchronized

(4)用于方法、类、接口、包和异常
class 、 extends 、 implements 、 interface 、 package 、 import 、 throws

5.标识符
标识符由字母、数字、下划线“_” 组成,数字不能开头。
不能把【 关键字】 和 【保留字】 作为标识符。
标识符没有长度限制。
标识符对大小写敏感。
命名规范:

类/接口:首字母大写,多个单词首字母都大写 eg:ClassName
包: 倒域名 全部小写字母 以实心点(.)分开 eg:javabs.entity
方法/函数名称:一个单词小写,多个单词从第二个开始首字母大写(第一个依旧小写,有括号)eg:getSum()
变量(临时存储数据的作用):一个单词小写,多个单词从第二个开始首字母大写(第一个依旧小写,最后没有括号)eg:getElementById
常量:全部大写,多个单词以下划线分割eg:MY_CLORE
6.注释
单行注释

// 被注释的内容
快捷键:ctrl+/ 或 ctrl+shift+C
多行注释

/* 被注释的内容 */
快捷键:ctrl+shift+/
文档注释

/** 被注释的文档 */
快捷键:Alt+shift+J
7.变量和常量
变量
成员变量/全局变量:定义在类中,不在方法、语句、代码块中

public class Demo{
    int age;
}

局部变量:定义在方法中或语句中、代码块中

public calss Dmeo{
    public static void main(string []arge){
        int age;
        System.out,println(age);
    }
}

成员变量和局部变量的区别?

成员变量有默认初始化值
int的初始化值为0
boolean的初始化值为false
局部变量没有初始化值,在使用之前必须得进行赋值操作
常量

不变的量
得使用final去修饰变量
8.运算符
算术运算符【+ - * / %】
比较运算符【< > >= <= == !=】
逻辑运算符【或\ 与& 非! 短路与&& 短路或】
– \ 或:一true则true 都false则false 第一个判断条件不管成立与否,后面的条件条件都会进行执行
– 短路或:一true则true 都false则false 第一个条件成立,后面的条件不再执行返回true
– &与 :都true则true 一false则false 第一个判断条件不管成立与否,后面的条件条件都会进行执行
– 短路与:都true则true 一false则false 第一个条件不成立,后面的条件不再执行,返回false
三元/三目元运算符条件表达式 ? 满足:不满足
例如
public class Demo {
    public static void main(String[] args) {
        boolean a = 20 > 15 ? true: false;
        System.out.println(a);
    }
}

移位运算符
赋值运算符
在Java中,单等于号表示赋值,等于号右边的值赋值给等于号左边的,双等于表示等于
9.语句
选择结构语句

- if
单支语句 if ( ) { }
双支语句 if ( ) { }else if ( ){ }else if ( ){ }
多支语句if ( ) { }else { }

- switch
switch(①){ case xxx : break; default{} }
①的意思是:条件 该条件的类型可以是 整数 在JDK1.7版本后,可以使用字符串作为类型

public class Demo {
    public static void main(String[] args) {
        System.out.println("请输入分数:");
        Scanner sc = new Scanner(System.in);
        int score = sc.nextInt();
        switch (score/10){
            case 10:
            case 9:
                System.out.println("A");
                break;
            case 8:
                System.out.println("B");
                break;
            case 7:
            case 6:
                System.out.println("C");
                break;
        }
        System.out.println("分数为:" + score);
    }
}

循环结构语句

while循环
先判断后循环

for循环
i++ 先运算后赋值
++i 先复制后运算

public class Demo {
    public static void main(String[] args) {
        for (int i = 1; i <= 4; i++) {
            for (int j = 1; j <= i; j++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

do while循环
先循环后判断
10.方法
描述对象具备的功能,就是方法

格式:
权限修饰符 返回值类型 方法名称(参数1 的类型 参数1 ,参数2的类型 参数2 ){
执行语句;
return; 结果值
}

权限修饰符
public 公共的
private 私有的
default 默认的
protected 受保护的

返回值类型
如果有类型,请参照数据类型结构图
如果没有类型,使用void

方法名称
命名在符合命名规范的前提下 见面知意即可 eg:getSum() 求和

返回值
如果有返回值类型,使用return关键字

@Test
public viod getSum(int x,int y){
    int z = x + y;
    return z;
}

如果没有返回值类型,省略return关键字

@Test
public void print99(){
    for (int i = 1; i <= 9; i++) {
            for (int j = 1; j <= i; j++) {
                System.out.print(i * j);
            }
        System.out,println();
    }
}

重载 overload
方式一:方法名称相同,参数个数不同
方式二:方法名称相同,返回值类型不同

Junit单元测试的方法 使用细节
1.在方法名称上 存在 @Test—— 别忘记导包
2.测试方法的权限修饰符 必须是 public
3.测试方法的返回值类型 必须是 void
4.测试方法的方法名称 随便起名
5.测试方法的方法参数 必须为空

数组
数组是一个容器,也是一个数据存储结构
一维数组
二维数组
数组的使用
1.存入数组
(1)前提:有剩余的长度
(2)直接对剩余的长度进行分别赋值操作

2.从数组中取出元素
(1)单个取出,制定数组中的索引值位置
(2)循环操作

3.如何排序
(1)Arrays.sort(arr);

@Test
    public void print(int [] arr){
        for (int i = 0; i < arr.length; i++) {
            System.out.print(arr[i] + ",  ");
        }
        System.out.println();
    }
    @Test
    public void bubbleSort(){
        int arr [] = {2,55,69,78,41,58};
        for (int i = 0; i < arr.length - 1; i++) {
            for (int j = 0; j < arr.length - 1; j++) {
                if (arr[j] > arr[j + 1]){
                    int temp = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] = temp;
                }
            }
        }
        print(arr);
    }

(1)如何找出最值

public class Demo{
    public static void main(String[] args) {
        int arr [] = {12,56,99,82,36,555};
        int max = arr[0];
        for (int i = 0; i < arr.length; i++) {
            if (arr[i] > max){
                max = arr[i];
            }
        }
        System.out.println(max);
    }
}


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马