小白学习java第二天

    技术2022-07-11  85

    1. eclipse配置编译环境

    eclipse的jdk插件

    项目配置Java编译环境

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Y02FeB0G-1593609648402)(G:_千锋\JAVAEE\笔记\截图\编译环境的配置.png)]

    2. eclipse快捷键

    快速删除:ctrl+d快速移动代码:alt+方向键代码提示:alt+/快速复制:ctrl+alt+方向键查看类结构:ctrl+o单行注释:ctrl+/多行注释:ctrl+shift+/文档注释:/**+enter代码缩进 ctrl+shift+f

    3. 标识符(identifier)规则

    概述 用来给类,方法,接口,变量命名的字符序列 组成规则 数字大小写字母_和$不能以数字开头不能是关键字 总结 一定要遵守,否则编译报错,无法运行

    4. 标识符的书写规范

    为什么要规范

    专业性职业素养

    前提

    见名知意

    规范

    域名倒写,全部小写字母

    com.qfedu

    类、接口

    单个单词:首字母大写

    多个单词:每个单词的首字母大写

    Demo DemoKey

    方法、变量

    单个单词:首字母小写

    多个单词:从第二个单词起,首字母大写

    run runQuick

    常量

    全部大写

    多个单词之间用_连接

    HOME HOME_NAME

    5. java常量

    概述 java中不能改变的量 分类 字面常量自定义常量 字面常量 字符串常量整数常量小数常量字符常量布尔常量null /** * 常量 * @author MACHENIKE * */ public class Demo02 { public static void main(String[] args) { //字符串常量 System.out.println("hi"); //整数常量 System.out.println(123); //小数常量 System.out.println(12.3); //布尔常量 System.out.println(true); //字符常量 System.out.println('A'); //null System.out.println(null+""); } }

    6. 数据类型的概述和分类

    概述 java是一个强类型语言,每一个数据都有一个明确的数据类型 分类 基本数据类型引用数据类型 基本数据类型 整形 byte 1字节short 2字节int 4字节long 8字节 浮点型 float 4字节double 8字节 布尔型 boolean 字符型 char 2字节

    7. java变量

    概述

    在代码运行过程中,能够发生改变的量

    语法

    数据类型 变量名 = 值;

    分类

    局部变量 定义在方法中,又叫方法变量 全局变量 定义在方法外,又叫对象变量 静态变量 定义在方法外,有static修饰,又叫类变量

    代码实现

    局部变量

    public class Demo05_Variable { public static void main(String[] args) { // 数据类型 变量名 = 值; byte num1 = 127; System.out.println(num1); short num2 = 600; System.out.println(num2); int num3 = 100000; System.out.println(num3); long num4 = 1000000000; System.out.println(num4); float num5 = 1.3f; System.out.println(num5); double num6 = 5.6; System.out.println(num6); boolean flag = true; System.out.println(flag); char chr = 'A'; System.out.println(chr); String str = "abcd"; System.out.println(str); } }

    全局变量,静态变量

    public class Demo05_Variable02 { static byte num1 = 127; static short num2 = 600; static int num3 = 100000; static long num4 = 1000000000; static float num5 = 1.3f; static double num6 = 5.6; static boolean flag = true; static char chr = 'A'; static String str = "abcd"; public static void main(String[] args) { System.out.println(num1); System.out.println(num2); System.out.println(num3); System.out.println(num4); System.out.println(num5); System.out.println(num6); System.out.println(flag); System.out.println(chr); System.out.println(str); } }

    8. java变量使用的注意事项

    作用域

    同一作用域类不能同时声明一个相同的变量

    变量的初始化问题

    成员变量在声明的没有赋值,则系统会自动赋值 byte short int long 初值为0float double 初值为0.0boolean 初值为falsechar 初值为‘’ 局部变量在声明时没有赋值,系统不会自动赋值

    一条代码定义多个变量

    int n = 1, m = 2, g = 3;

    9. 数据类型转换之隐式类型转换

    概述

    byte short int char 参与运算会转换成int类型大精度和小精度参与运算会升成大精度小类型和大类型参与运算会升成大类型 public class Demo11_TypeTransfer { public static void main(String[] args) { byte num1 = 1; byte num2 = 2; int numl = num1 + num2; short num3 = 2; short num4 = 5; int numk = num3 + num4; int num5 = 5; int num6 = 7; int numj = num5 + num6; char chr1 = 1; char chr2 = 2; int chr = chr1 + chr2; double num7 = 5.5; float num8 = 3; double numh = num7 + num8; int num9 = 5; long num10 = 6; long numg = num9 + num10; } }

    10. 数据类型转换之强制类型转换

    概述

    大精度–>小精度大类型–>小类型

    语法

    小类型 变量名 = (小类型)值 * 代码 ```java public class Demo11_TypeTransfer { public static void main(String[] args) { byte n = 2; byte m = 3; byte l = (byte)(n + m); } }

    11. 字符和字符串参与运算

    字符参与运算

    char类型会自动升成int类型,结果参考ASCII码表 0–>48 A–>65 a–>97

    字符串参与运算

    任何类型的数据和字符串使用“+”运算时都会被看成字符串,再拼接System.out.println('a'+1) //输出98 System.out.println("hello"+1) //输出hello1 System.out.println("hello"+('a'+1)) //输出hello98

    12. 进制的概述

    概述

    进位制,即人们定下的一种进位规定,二进制即逢2进1,八进制即逢8进1,等等

    二进制

    即0,1,逢2进1

    八进制

    二进制表示数字太长,以3位二进制表示1位八进制

    十六进制

    八进制表示数字太长,以4位二进制表示1位十六进制

    13. 为什么128GB的硬盘只有119GB

    分析 厂商计算方式 以1000作为 b kb mb g之间的进率 电脑计算方式 以1024作为 b kb mb g之间的进率

    14. 不同进制的表现形式

    二进制

    以0b开头

    八进制

    以0开头

    十六进制

    以0x开头 public class Demo06_scale { public static void main(String[] args) { System.out.println(0b100); System.out.println(0100); System.out.println(0x100); } }

    15. 不同进制转十进制

    在线转换网站

    16. 十进制转任意进制

    除积倒取余

    17. 原码补码反码

    概述

    计算机进行数字运算时使用的是补码

    原码

    就是二进制数本身,只是在前面多了一个符号位

    反码

    正数的反码就是原码,负数的反码就是将原码0变1,1变0,符号位不变

    补码

    正数的补码就是原码,负数的补码就是反码的末尾+1

    解释7+(-7)= 0

    18. 精度损失

    问题说明

    2个byte类型的值num1,num2,加和之后进行强转

    public class Demo09_AccuracyLoss { public static void main(String[] args) { byte num1 = 66; byte num2 = 70; byte sum = (byte)(num1 + num2); System.out.println(sum); } } //输出结果是-120

    为什么两个正数的加和却是一个负数?

    计算机内部进行数字加和的时候是以补码的形式进行加和的。66+70=136 即 1000 1000

    存中…(img-cJN3AGcq-1593609648405)]

    18. 精度损失

    问题说明

    2个byte类型的值num1,num2,加和之后进行强转

    public class Demo09_AccuracyLoss { public static void main(String[] args) { byte num1 = 66; byte num2 = 70; byte sum = (byte)(num1 + num2); System.out.println(sum); } } //输出结果是-120

    为什么两个正数的加和却是一个负数?

    计算机内部进行数字加和的时候是以补码的形式进行加和的。66+70=136 即 1000 1000

    (num1+num2)应该是一个int型的数,int型有4个字节,强转为byte后,损失了3个字节(byte只有1个字节),一个字节是8位,此时1000 1000是在计算机内以补码的形式存在,要将其化为原码再显示出来,此时第一位的1为符号位,先计算出其反码 1000 0111 再计算其原码,1111 1000,再将后面7位转换成十进制,1为符号位,结果即为-120

    思维导图

    Processed: 0.013, SQL: 9