大家好.刚来黑马学习了十多天课程的基础班,很有意思的课程,当然要是没有点基础的话.学习还是很吃力的.课下需要多练习,课上多做笔记.要在记事本上记笔记.课上某可不懂的知识点.不懂就标记下.继续跟上老师的知识点,这是理智的行为.平时做了一点笔记,分享看一下,关键字:
被Java语言赋予了特定含义的单词
关键字特点:
字母全部小写,编辑器直观显示.
常量含义;
在程序的执行过程中,其值不可以发生改变的量
常量分类;
A;字符串常量;"helloworld"
B 整数常量;12,-34
C.小数常量 1.5 2.3
D 字符常量 '1' 'q'
E 布尔常量 true false
F 空常量 null
变量含义;
内存中一小块区域,在程序的执行过程中,其值可以在一定范围内发生改变量
组成;
A 对区域要有限定
如何限定? 用数据类型来限定
B 区域要有名称
变量名
C 区域要有变量
初始化值
数据含义;
数据类型分类
A 基本数据类型
B 引用数据类型 (类,接口,数据)
基本数据类型
分4类8种
A 整数 占用字节数
byte 1
short 2
int 4 -2147483648 --2147483647
long 8
B 浮点型
float 4
double 8
C 布尔型
boolean 1
D 字符型
char 2 可以存储中文
byte short char > int > long > float > double
整数默认int 存储 int xiuxiu = 18;
小数默认double 存储 float xiuxiu = 18.0f;
double xiuxiu = 18.0;
定义float类型和long类型要注意
float 取值时要加F或者f,
long 取值时值在int范围内时可以不加,超过范围要加L或l.建议直接加大写L
float的取值范围比long大.
标识符;
用来给包,类,方法,变量等起名字的符号.
组成规则;
A,unicode 字符
数字字符,英文大小写字母,汉字(不建议使用汉字)
B,下划线 _
C,美元符 $
注意;
不能数字开头,中间不能有空格,不能是关键字
常见命名规则;
A,基本要求
见名知意
B,常见的命名
a.包(其实就是文件夹,用于对类的管理)
全部小写,多级包.隔开 域名反写
b.类
单个或多个单词,首字母大写
c.方法和变量
一个单词,都小写.多个单词,从第二个单词开始首字母大写
age gateAge
d.常量
每个字母都大写,多个单词用_隔开
变量定义的注意事项;
A.变量未赋值,不能直接使用
B.变量只在它所属的范围内有效
变量属于它所定义到右大括号结束
C.一行可以定义多个变量,但是不建议
数据类型中的类型转换;
+ ;这是一个运算符,用于做加法运算的.
我们在做运算的时候,一般要求参与运算的数据的类型必须一致.
分类;
隐式转换;(自动类型提升)
int + int类型,其结果用int 类型接收
int + byte类型 先将取值范围小的byte类型提升成int类型.在坐运算
取值范围;byte short char > int > long > flost > double
强制转换;目标类型 变量名 = (目标类型) (被转换数据);
建议;数据做运算,结果属于什么类型,就用什么类型接收,
尽量不要强制转换,结果会损失精度
byte char short > int > long > flost > double 取值范围大小
byte b = 3; //java有常量优化机制
// -128~127,由于3属于byte 取值范围内,那么jvm会检查,在范围内会自动做强转
.运算符;
算术运算符;
+ - * / %(取两数相除的余数)
3 / 4 = 0 /除只显示整数.不显示后面的小数.
3.0 / 4 = 0.75
3 % 4 = 3 等于0 余3
4 % 3 = 1 余1
%的运用
当左边的绝对值小于右边的绝对值时,结果是左边
当左边的绝对值等于右边或是右边的倍数时,结果是0
当左边的绝对值大于右边的绝对值时,结果是余数
%运算结果的符号只和左边有关系,与右边无关.
运算符
算数运算符 + - * / % ++ --
逻辑运算符; & | ^ ! && || (连接两个boolean类型的关系式)
关系运算法符; == (不要写成一个=号.=是表示附值);
附值运算符 += -= *= /= %=
三元运算符
关系运算符;!= ;>;>= ;< ; <= ;
关系运算符 ,条件表达式,布尔(boolean)表达式 都是一种表达式
结果都是boolean类型 true 或者 false
字符参与运算;
'A' = 65
'a' = 97
'0' = 48
字符串参与加法运算.其实做的不是加法运算,而是字符串的拼接
++在后面,先拿变量做操作,然后变量再++(+1)
++在前面,变量先++(+1),然后再拿变量做操作
int a = 10;
System.out.println(a++) 输出是10 然后a = a + 1 = 11
System.out.println(++a) 输出是12 a = 1 + a = 1 + 11 = 12
赋值运算符
+= -= *= /= %=
int a = 10
a += 20
System.out.println(a); 输出是30
++ -- += 类都包含了强制类型转换
byte a = 10;b
b += a // byte b = a + b a + b 默认是int类型.
逻辑运算符 (连接两个boolean类型表达式) & | ^ ! && || 结果是boolean类型.true false
& (逻辑与)有false 则false && 有false则false
|(逻辑或) 有true则true
^(逻辑异或) 相同则false 不同则true 例如男女关系,男男false 男女true
!(逻辑非) true则false false则true
&&(短路与)具有短路效果,前面false后面不执行,&不管前后是true还是false都执行
&& 短路情况(&&)下,左边是false时,右边不执行 结果是false
& 左边是false时,两边都执行 结果是false
|| 短路情况(||)下,左边是true时,右边不执行 结果是true
| 左边是true时,两边都执行 结果是true
三元运算符;
关系表达式?表达式1:表达式2
执行流程;
A;计算关系表达式的值,看是true还是false
B;如果是true, 结果是表达式1
如果是false,结果是表达式2
Scanner
A;导包
import java.util.Scanner;
在类中顺序;package > import > class
B;创建键盘录入对象
Scanner sc = new Scanner(System.in);
C;接收数据
int i = sc.nextInt();
import java.util.Scanner;
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
.还有一些老师的笔记,很有分量,没事多看看
s1.equals(s2) 判断字符串值是否相等
s1.equalsIgnoreCase :忽略大小写比较 String s1 = new String("hello");
s1.startsWith("he")判断是否以某个字符串开头
String s1 = "hello";
s1.endWith("llo")判断是否以某个字符串结尾
s1.length() 获取字符串长度(字母个数)
s1.charAt(字符串索引) 获取指定索引处的某个字符
s1.indexOf(字符串):获取S1中,第一次出现参数中字符串的位置索引,如果没有,返回-1,
s1.substring(索引):从索引处截取字符串,一直截取到最后
s1.substring(索引,end):从索引出开始,到end处进行截取,包括索引,不包括end对应的字符
s1.toCharArray() :字符串变成字符数组
s1.
s1.toLowerCase();小写
s1.toUpperCase():大写
s1.trim():去掉左右两端的空格(不包括中间的) 小红
s1.split(某个字符串):根据某个字符串,把原字符串分割成数组
StringBuilder sb = new StringBuilder()
sb.capacity() 获取sb容器的容量(理论值)
sb.length():获取里面字符串的长度
sb.append(内容):向字符串中追加数据(返回的是对象)
sb.reverse():字符串翻转
StringBuilder转成字符串
sb.toString();返回一个字符串
字符串转换成StringBuilder
new的时候,直接把字符串放进去就好了
new StringBuilder(字符串/字符串变量)
sb. charAt(int index) :获取指定索引处的某个字符
sb. delete(int start, int end) 删除.
|
|