Day03

0 阅读5分钟

java基础语法

1.注释

// 单行注释

/*
   多行注释
*/

/**
   文档注释
/

被注释的内容, 不会参与程序的编译和运行

2.关键字和字面量

2.1关键字

介绍 : 被Java赋予了特殊含义的英文单词

比如:public static

关键字不能被使用(当作变量 、方法等)

2.2字面量

public static void main(String[] args) {
        String name = "黑马程序员"; // 字符串
        int age = 18;   // 整型
        char gender = '男';  // 字符
        double height = 170.5;//    小数
        boolean isSingle = true; // 布尔型
        //null (空值)
    }

3.标识符

介绍:给类,方法,变量等起名字的符号

3.1命名规则

1.由数字、字母、下划线(_)和美元符($)组成

2.不能以数字开头

3.不能是关键字

4.区分大小写

3.2标识符的命名规范

1.小驼峰命名法:变量,方法
标识符是一个单词时所有字母小写( name )
标识符多个单词时,第一个单词所有字母小写,第二个单词首字母大写( firstName )
2.大驼峰命命名法:类
标识符是一个单词时所有字母大写( NAME )
标识符多个单词时,每个单词首字母大写( FirstName )

4.数据类型

分为基本数据类型和引用数据类型

基本数据类型

整数型:byte(取值范围从-128~127,内存占用1个字节)
      short(内存占用2个字节)
      int(内存占用4个字节)
      long(内存占用8个字节)
浮点型:float(内存占用4个字节)
      double(内存占用8个字节)
字符型:char(内存占用2个字节)
布尔型:boolean(内存占用1个字节)

补充:

1.整数类型变量:首选 int,如果发现 int 装不下数据了,将类型换成 long,但是定义 long 类型变量,需要加入 L 标识

2.小数类型变量:首选 double,如果非要使用 float 类型,需要在数值后面加入 F 标识

5.算数运算符

 System.out.println(5 + 2);  //7
 System.out.println(5 - 2);  //3
 System.out.println(5 * 2);  //10
 System.out.println(5 / 2);  //2
 System.out.println(5 % 2);  //1

6.自增自减运算符

  1. 单独使用: 符号在前在后没有区别的

​ int a = 10;

​ ++a;

​ a++;

​ 2. 参与运算使用

​ ++在前: 先自增再操作

​ ++在后: 先操作再自增

 int a = 10;
 int b = ++a;        // a = 11, b = 11
 System.out.println(a);
 System.out.println(b);

 int c = 10;
 int d = c++;        // d = 10, c = 11
 System.out.println(c);
 System.out.println(d);

7.类型转换

7.1隐式转换

7.2强制转换

1.介绍把一个取值范围大的变量或者数值,赋值给另一个取值范围小的变量,不允许直接赋值,需要加入强制转换

2.格式:目标数据类型 变量名 = (目标数据类型) 被强转换数据

double a = 12.3int b = (int) a

3.注意事项:大的给小的赋值,不能直接赋值,需要强制类型转换,强转过程中有可能出现精度损失问题,使用的时候需要注意。

8.赋值运算符

a += b   (a = a + b)
a -= b   (a = a - b)
a *= b   (a = a * b)
a /= b   (a = a / b)
a %= b   (a = a % b)  
/*注意 :  扩展赋值运算符自带强转效果
int a = 10;
double b = 12.3;
a += b;
System.out.println(a);   
输出结果为22,因为相加之和的22.3赋值给 a ,a 变量为 int 类型,强转后砍掉小数点,结果为22
*/

9关系运算符

System.out.println(10 > 20);            // false
System.out.println(10 >= 20);           // false
System.out.println(10 < 20);            // true
System.out.println(10 <= 20);           // true
System.out.println(10 == 20);           // false
System.out.println(10 != 20);           // true

10.逻辑运算符

10.1普通的逻辑运算符

&(与): 遇false则false(或): 遇true则true
!(非): 取反^(异或): 相同为false, 不同为true

10.3带有短路效果的逻辑运算符

符号介绍说明
&&短路与短路与&&,如果左边为false,右边不执行;如果左边为true,右边执行
||短路或短路或||,如果左边为false,右边要执行;如果左边为true,右边不执行

11.Scanner 键盘录入

 Scanner sc = new Scanner(System.in);
 int score = sc.nextInt();

12.方法

介绍:一段具有独立功能的代码块,不调用就不执行,便于提高维护性和代码的复用性

12.1定义和调用格式

public static void 方法名(){
    //方法体
}
//调用格式
方法名();

12.2带参数的方法

public static void getMin(int a, int b){
    int Min = a < b ? a : b;
        System.out.printlb(Min);
}
// public static void 方法名(数据类型 变量名){
// 方法体
}

12.3带返回值的方法

public static int add (int a, int b){
    int c = a + b;
        return c;
}
//public static 数据类型 方法名 (数据类型 变量1 ,数据类型 变量名2)

12.4方法的注意事项和重载

  • 方法不调用就不执行

  • 方法与方法之间是平级关系,不能嵌套定义

  • 方法的编写顺序和执行顺序无关

  • 方法的返回值类型为void,表示该方法没有返回值,没有返回值的方法可以省略return语句不写,如果要编写return,后面不能跟具体的数据。

    方法重载:在同一个类中,定义了多个同名的方法,但每个方法具有不同的参数类型参数个数,这些同名的方法,就构成了重载关系

    格式要求:同一个类中,方法名相同,参数不同的方法,与返回值无关

    参数不同:个数不同、类型不同、顺序不同# 流程控制语句

1.if语句

1.1if的三种格式

if(判断条件){
    语句体
}
//=================================

if (判断条件){
    语句体
}else{
    语句体2
}
//=================================    
    
if (判断语句){
    语句体1
}else if(判断语句){
    语句体2
}    

2.switch语句

switch(表达式){
   case1:
       语句体1breakcase2: 
       语句体2break;  
}

case的穿透性

package com.itheima.test;

public class SwitchTest {
    /*
        需求: 定义一个方法, 方法接收一个月份, 程序打印出不同的季节
                3 4 5 : 春季
                6 7 8 : 夏季
                9 10 11 : 秋季
                12 1 2 : 冬季
     */
    public static void main(String[] args) {
        Day(6);
    }

    public static void Day(int month) {
        switch (day) {
            case 1:
            case 2:
            case 3:
                System.out.println("敲代码");
                break;
            case 4:
            case 5:         
                System.out.println("复习");
                // break;
            case 6:
            case 7:           
                System.out.println("出去玩");
                break;            
            default:
                System.out.println("您的输入有误!");
                break;
        }
    }
}