2020.7.7课堂笔记(命名规则、变量的数据类型、Scanner、运算符)

Demo1:用于展示变量的定义和使用
(IDEA中自定义javaDoc设置:File中找到setting->Editor->File and Code Template->File Header)
/**
*@Author:
*@Date: ${DATE} ${TIME}
*@Description:
**/

/**
*javaDoc注释,用于注释类和方法
*作者:
*日期:
*描述:用于展示变量的定义和使用
**/
public class Demo1 {
    //主方法入口
    public static void main(String[] args){
        //实现存银行的操作
        //定义变量名和变量类型
        int money=1000;
        //+作用在字符串和变量之间的情况下是字符串拼接
        System.out.println("在银行中存入了:"+money+"元");
        money=1050;
        System.out.println("余额为:"+money+"元");
    }
}

Demo2:变量的声明、赋值

public class Demo2 {
    public static void main(String[] args) {
        int money;//变量的声明
        money=1000;//变量的赋值
        double abc=1.2;//变量的声明和赋值
        money=1050;//重新赋值
        System.out.println(money);//直接打印
        double result=money*abc;//计算
        //上面这三种都是变量的使用方式
        System.out.println(result);
    }
}

Demo3:
定义Scanner注意import引入对应的路径

import java.util.Scanner;//声明Scanner来自哪里
public class Demo3 {
    public static void main(String[] args){
        //1、定义Scanner,import引入对应的路径
        Scanner sc=new Scanner(System.in);
        //2、提示输入
        System.out.println("请输入您的姓名:");
        //3、使用变量接收输入
        String name =sc.next();
        //4、使用接收的数据
        System.out.println("输入的姓名为:"+name);
    }
}

Demo4:
强制类型转换:从大类型转到小类型,必须进行强制类型转换,而且可能丢失精度

public class Demo4 {
    public static void main(String[] args) {
        double firstAvg=81.28;
        int rise=2;
        //精度丢失
        int secondAvg=(int)firstAvg+rise;
        System.out.println(secondAvg);
    }
}

Demo5:三变量交换法
(引入一个临时变量,用于保持交换过程中的值)

public class Demo5 {
    public static void main(String[] args) {
        //三变量交换法
        int num1=8;
        int num2=9;
        //1、先定义一个临时变量,用于保持交换过程中的值
        int tmp;
        //2、保存num1的值
        tmp=num1;
        //3、使用num1接收num2的值
        num1=num2;
        //4、使用num2接收临时变量中num1的值
        num2=tmp;
        System.out.println("num1的值为:"+num1+"\nnum2的值为:"+num2);
    }
}

Demo6:
a++和++a的关系:都是对a加1
a++是加之前的a的值,++a是加之后的a的值

public class Demo6 {
    public static void main(String[] args) {
        int a=2;
        int b=5;
        System.out.println("b对a取余得:"+b%a);
        System.out.println("a对b取余的:"+a%b);
        System.out.println(a++);
        System.out.println(++a);
        System.out.println(b--);
        System.out.println("b--之后b的值为:"+b);
        System.out.println(--b);
        System.out.println("--b之后b的值为:"+b);
    }
}

Demo7:
逻辑运算符:
&& 逻辑与:A && B 只有当A表达式和B表达式同时为true,则结果为true,否则全部为false
|| 逻辑或:A || B 只有当A表达式和B表达式同时为false,则结果为false,否则全部为true

public class Demo7 {
    public static void main(String[] args) {
        //布尔值以及关系运算符
        boolean result1=5>6;//false
        boolean reault2=5<6;//true
        System.out.println(result1);
        System.out.println(reault2);
        //两个表达式都为True的时候才是True
        System.out.println(result1 && reault2);//逻辑与
        //其中一个为true就为true 都为false才是false
        System.out.println(result1 || reault2);//逻辑或
        System.out.println(!result1);
    }
}

Test1:
注意点:1、char类型必须用单引号
2、float类型后面要加f是规定没有任何含义
3、注意+是算术运算还是字符串拼接(从左向右的规则)
4、scanner不可以输入char类型只能是String类型

import java.util.Scanner;
public class Test1 {
    public static void main(String[] args){
        //改造把变量值的输入变成控制台输入:
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入一个小数");
        float score = sc.nextFloat();
        System.out.println("请输入您的名称:");
        String name=sc.next();
        System.out.println("请输入您的性别");
        String sex=sc.next();

        //定义变量并保存数值
        //float score=98.5f;
        //String name="张三" ;
        //char sex='男';
        //字符串拼接的情况下用+要注意(从左向右的规则)
        System.out.println("Java课考试最高分:"+(score+1));
        System.out.println("最高分学员姓名:"+name);
        System.out.println("最高分学员性别:"+sex);

    }
}

Test2:final定义常量,常量名称全大写

public class Test2 {
    public static void main(String[] args) {
        //final定义常量,常量名称全大写
        final double PI=3.14;
        //班级名称,不同单词直接用下划线分割
        final String CLASS_NAME_OF_BEIDA_QINGNIAO_ZHONGBO="KB09";
    }
}

Test3:取出一个数字各位上的数
1、num/100是取商、int类型
举例:5/2=2 ; 5/2.0=2.5
2、取最高位数字可以%10也可以不%10

//取出一个数字各位上的数
public class Test3 {
    public static void main(String[] args) {
        int num=19854;
        int gewei=num%10;
        int shiwei=num/10%10;
        int baiwei=num/100%10;
        int qianwei=num/1000%10;
        int wanwei=num/10000;
    }
}

变量命名规则:
字下美人数、骆驼、有意义
字:字母a~z 、A~Z
下:下划线_
美:美元符$(常常用来做系统类型的变量)
——人:人民币符¥(基本上不用)
数:数字0~9
在这里插入图片描述

变量命名不能以数字开头
变量名组成由:字下美人数 组成

骆驼:驼峰命名法
className
schoolAddress
addressOfSchool
正常情况下以小写字母开头
和类名作为区分
2020.7.7课堂笔记(命名规则、变量的数据类型、Scanner、运算符)_第1张图片final定义常量,常量名称全大写,不同单词直接用下划线分割
在这里插入图片描述

参考:《java开发手册(泰山版)》
链接:https://pan.baidu.com/s/1oAuIfxxm3eLmxlXXi-wwpA
提取码:0hmp

变量的数据类型:
数值型:
整形:(int,默认值0)
byte,short八位机的出现,int,long
byte范围:-128~127 -2的7次方~2的7次方-1
short范围:-32268~32267 -2的15次方~2的15次方-1
int范围:-2的31次方~2的31次方-1
long范围:…
二进制: 0000 0000 ~ 1111 1111
十进制:-128~127 0~127
非整形:(浮点数)(double,默认值为0.0)
float,(单精度浮点数)
double,(双精度浮点数)
非数值类型:
字符型:char类型必须要用单引号
(\u00 0x00 空字符)
字符0:对应ascii码值48(16进制的ascii值0x30)
字符A:对应ascii码值65(16进制的ascii值0x41)
字符a: 对应ascii码值97(16进制的ascii值0x61)
布尔型:(false)
判断的结果 true false

字符串型:(String:null未定义)不是基本数据类型

数据类型转换:(正常是数值型)
隐式数据类型转换:
从小类型转到大类型,自动就可以转换
强制数据类型转换:
从大类型转到小类型,必须进行强制类型转换,而且可能丢失精度
特殊转换:
所有基本数据类型和字符串相加时,全部转成字符串型

自增和自减:
a++和++a的关系:都是对a加1
a++是加之前的a的值,++a是加之后的a的值

缩略写法:
a+=b; --> a=a+b;
a-=b; --> a=a-b;

! 非 取反
逻辑运算符:
&& 逻辑与:A && B 只有当A表达式和B表达式同时为true,则结果为true,否则全部为false
|| 逻辑或:A || B 只有当A表达式和B表达式同时为false,则结果为false,否则全部为true
! 取反: !A A表达式的值为true时,则为false,反之同理

你可能感兴趣的:(笔记)