'0'-48
'A'-65
'a'-97
空格-32
换行符-10
'0'-48
'A'-65
'a'-97
空格-32
换行符-10
计算机的体系结构
JAVA语言
Java架构
1.变量随时用随声明
2.打印语句可以合并
3.重复的代码越少越好
总结
面向对象
1.基本概念
2. 对象的创建
new 类名();
3.引用的定义
使用引用数据类型定义的变量简称引用
引用主要用于记录对象在堆中的内存地址
语法格式
类名 引用变量名;person p = new person;
引用变量名.成员变量名 p.name = "张飞";
数据结构包括三个方面
1:分支结构
2:顺序结构
3:循环结构
加一个超前知识: thread.sleep(5000),让它缓冲5秒
For的无限循环 可以直接for( ; ; ){
}
Random 和Scanner感觉差不多,都是要借下扫描器
Random ra = new Random();
Ra.nextInt(100);------这句话意思是随机生成1~100之间(不含)
Int
随机猜数字游戏,外挂---就是让他随即产生的数字并打印出来 才行
For循环更适合于明确循环次数或范围的场合中
While true表示无限循环
常用数据类型 初始值为0 或者0.0
引用数据类型 初始值为null
Int[][] brr = new int [2][6]
这个是二维数组的表达方式---2行 6列
Arr3[] = 20; 这个代表的给列空间的赋值 而不是申明空间
或者 int[][] brr = {{11,22,33,44},{55,66,77,88}}
这样来赋值,而不是申明空间
Jvm会在其内存空间中 开辟一个称之为 堆的存储空间 这部分空间
用于存储使用 new 关键字 创建的数组和对象
易错点arr[i] = arr[i - 1] 但是我之前写成了i来定位 事实上
Arr[i] 这个代表的数字 是关键信息
插入排序
For (int i = arr.length-1; i > 0; i++ ){
Arr[i] = arr[i-1]
}
Arr[0] = 55
数组的有缺点
优点:可以通过下标直接找到该数据
缺点:所有的数组类型相同
要求内存空间连续,并且长度一旦确定,就不能修改
增加和删除元素时 可能移动大量元素,效率都
增加功能,调取数据中的包
作用是表示将数组arr中下标从1开始的第三个元素拷贝到数组brr中
下标从0开始的位置
System. Arraycopy(arr, 1, brr, 0 ,3)-----这个不知道 用的多不多
使用Scanner的时候是交叉顺序
例如:Scanner input = new Scanner(System.in);
Int sth = input.nextint();
有机会了解了解 inport java.util Arrays这个包,主要作用是直接将数组
打印出来,而不是使用for循环,而且这个还能做到{1, 2, 3, 4}
带逗号和前后两个花括号,而不是分段用for循环再另外加上 才能处理
这里有好几个数组工具类的常用方法-------都是 这种 增加一个包,然后
用现成的数组结构 放进去
添加数据
Int[] [] arr = {{1,2,3,4},{5,6,7,8}};
类 在java语言中体现为一种引用数据类型
之前的数组,后面学习的类,都是引用数据类型,还有String 字符串 都是引用数据类型
类的实例化
创建对象也就是这个类的实例化 实体过程
当一个类定义完毕之后,可以使用new关键字来创建该类的对象,这个过程叫做类的实例化,
创建对象的本质,就是在内存空间堆区申请一块存储空间,用于存放该对象独有特征信息
这个主要针对 我们在创建一个 匿名对象(也就是没有命名的对象) 然后下次再找这个对象的时候,就会找不到,因此 我们需要用引用 来处理
只要我们拿数组或者类这样的变量定义,我们都可以叫做引用数据变量
引用数据变量主要用来记录 对象在堆区中的内存地址,便于下次访问
这个和之前的String 一样,都是引用数据类型
想明白了 原来引用的定义 就是为了产生内存地址
方便 能够直接找到堆区的信息
因此 都是 引用过来的,才会叫做引用
为什么是2^7 因为最大一位代表符号
之前一直不知道 为什么-45 + 45 = 0
因此 可以计算取反 然后加1
10进制转为二进制
方法一:用它除以二
方法二:直接拆分成2^0+2^1+2^2+2^3+2^4---
1:自己算一个十进制 54/158 转为二进制,然后计算机算一遍
2:0b101101 这个b代表二进制--bin代表二进制
3:0x开头 16进制 0开头 8 进制
4:另外八进制英文为Octal ,首字母O和数字0相似,用0作为前缀表示八进制符合习惯
1:计算机主要包括 cpu 内存 硬盘
2:内存 运行速度快,缺点 不能保存
3:javac.exe-编译器,主要用于将高级java源代码翻译成字节码文件
4:java.exe --解释器,主要用于启动jvm对字节码文件进行解释并执行
5:留意关于空行和退4格的问题 括号与首字母对齐的问题
6:System out println 系统输出打印
1:清空屏幕用快捷键 cls
2:java通过编译器javac编译成class文件,然后再通过java虚拟机运行,将class文件运行成java文件
3:ctrl + f 搜索 ctrl + shift来回切换,后面只要用shift就可以专门切换中英文
4:window + d 回到桌面 window + e 打开计算机 window + r 打开运行 window +tab切换任务 alt + tab 切换任务 ctrl+ alt +delete 启动任务管理器
5:jdr = jre + 编译器 jre = jvm + 核心类库
6:自己会安装环境变量
7:java引入包等于----借java的api(应该是叫接口)用下
8:基本数据类型(byte short int long float double boolean char )
9:引用数据类型(了解)数组 类(string) 接口 枚举 标注
这个案例是数据之间的元素的copy???
数组的优缺点
可以直接通过下标(索引)的方式访问直接位置的元素,速度很快
数组要求所有元素的类型相同
数组要求内存空间连续,并且长度一旦确定就不能修改。
增加和删除元素时可能移动大量元素,效率低
增删改查的本质