1、作业解析-判断以下变量赋值是否正确,如果错误请在代码后面以注释的形式说明错误的原因
int a = 1.1; //有问题:a变量是为整数类型的,1.1是小数类型,不能把小数赋值给整数类型的变量
int f = 2;
char b = lemon; // lemon会认为是变量名,认为没定义,会报错
char c = %; // 需要单引号包括起来
char p = "%"; // 需要单引号包括起来
char d = '%';
long e = 1.1; // 不能把小数复制给整数类型
long g = 3;
float j = 2.3; // 2.3默认小数是double,需要加f 或者F
float m = 2.3f;
double n = 3.33;
2、引用类型-通过内存地址,才能访问值
引用类型分类
- 数组
- 类
- 接口
- 枚举
字符串
- 字符串可以跟任意类型的数据进行拼接得到新的字符串,拼接符号为“+”
- 字符串通过+和其他的类型数据运算的时候,结果都是为字符串,并且是拼接的效果
package com.testcfl.day02; public class StringTest { public static void main( String[] args ) { String a = "hello test "; System.out.println(a + "best"); System.out.println(a+true); System.out.println(a+1); //结论:字符串通过+和其他的类型数据运算的时候,结果都是为字符串 //并且是拼接的效果 } }
4、数组-索引从0开始
4.1 数组特点:
- 固定大小
- 固定类型
4.2 一维数组定义方法
- 方法一:数据类型[] 数组名 = new 数据类型[数组的长度];
- 方法二:数据类型[] 数组名 = {值1,值2,值3,值4};
4.3 二维数组定义方法
- 方法一:数据类型[][] 数组名 = new 数据类型[二维数组的长度][];
- 方法二:数据类型[][] 数组名 = {{值1,值2,},{值1,值2},{值1,值2}};
int [][] myArr = {{1,2},{3,4},{5,6}};
5、运算符
算术运算符、赋值运算符、比较运算符(注意字符串比较用方法equeals)、逻辑运算符(& 两边都运行,&&区别前面为假,后面不运行了)、三目运算符(逻辑表达式E ? E为true的值 : E为false的值)
6、运算的优先级
- ++,- -
- 括号
- *,/ ,% (同一优先级,从左至右)
- +,- (同一优先级,从左至右)
7、表达式建议
- 不要把一个表达式写得过于复杂,可以分步来写
- 少使用优先级,可读性差
- 多使用()来控制运算顺序