常见数据类型以及运算符:
1.常见数据类型以及注意事项
1.1:布尔类型变量
1.2:字符串类型变量(重点)
2.变量与常量
2.1:变量
2.2:常量
2.3:变量与常量的异同
3.类型转换
3.1:理解类型转换
3.2:理解数值提示
3.3:int 和 String之间的相互转换
4.运算符
4.1:算数运算符
4.2:关系运算符
4.3:逻辑运算符
4.4:位运算符
4.5:条件运算符
1.常见数据类型以及注意事项:
1.1:布尔类型变量
布尔类型变量
boolean 变量名 = 初始值;
boolean flg = true; System.out.println(flg); //布尔类型:只有两种取值:true false
注意:
- boolean数据类型表示一位的信息;
- 只有两个取值:true 和 false;
- 这种类型只作为一种标志来记录 true/false 情况;
- 默认值是 false;
- 例子:boolean one = true。
1.2:字符串类型变量(重点)
字符串类型变量(重点)
String 变量名 = "初始值";
public static void main(String[] args) { String str = "hello"; System.out.println(str);
注意:
- Java使用 双引号 + 若干字符 的方式表示字符串面值;
- 和上面的类型不同,Sting不是基本类型,而是引用类型;
- 字符串中的一些特定的不太方便直接表示的字符需要进行转义;
- 转义例子:
// 创建一个字符串 My name is "张三"
String name = "My name is \"张三\""
转义字符:
转义字符 | 解释 |
\n | 换行 |
\t | 水平制表符 |
\' | 单引号 |
\" | 双引号 |
\\ | 反斜杠 |
字符串“+”操作
System.out.println("hello"+"world");//拼接
System.out.println("hello"+10+20);//其他数据类型和字符串使用+拼接,结果就是一个字符串
System.out.println(10+20+"hello");
System.out.println("hello"+(10+20));
System.out.println(10+""+20+"hello");
//总:其他的数据类型和字符串进行+号拼接的时候,那么结果一定是字符串
//但是需要注意的是:如果是在跟字符串进行拼接之前
总结8种基本数据类型:
2.变量与常量:
2.1变量:
硬性指标:
1.
一个变量名只能包含数字
,
字母
,
下划线
2.
数字不能开头
.
3.
变量名是大小写敏感的
.
即
num
和
Num
是两个不同的变量
.
注意
:
虽然语法上也允许使用中文
/
美元符
($)
命名变量
,
但是
强烈
不推荐这样做
.
软性指标
:
1.
变量命名要具有描述性
,
见名知意
.
2.
变量名不宜使用拼音
(
但是不绝对
).
3.
变量名的词性推荐使用名词
.
4.
变量命名推荐
小驼峰命名法
,
当一个变量名由多个单词构成的时候
,
除了第一个单词之外
,
其他单词首字母都大写.
小驼峰命名示例
:
int maxValue = 100;
String studentName = "
张三
";
2.2:常量
上面讨论的都是各种规则的变量
,
每种类型的变量也对应着一种相同类型的常量
.
常量指的是运行时类型不能发生改变
.
2.3:变量与常量的异同
3.类型转换:
3.1:理解类型转换
1.
强制类型转换可能会导致精度丢失。
2.
强制类型转换不是一定能成功
,
互不相干的类型之间无法强转。
3.
不同数字类型的变量之间赋值
,
表示范围更小的类型能隐式转换成范围较大的类型。
4.
如果需要把范围大的类型赋值给范围小的
,
需要强制类型转换
,
但是
可能精度丢失。
5.
将一个字面值常量进行赋值的时候
, Java
会自动针对数字范围进行检查。
3.2:理解数值提示
1.
不同类型的数据混合运算
,
范围小的会提升成范围大的。
2.
对于
short, byte
这种比
4
个字节小的类型
,
会先提升成
4
个字节的
int ,
再运算。
3.3:int 和 String之间的相互转换
int
转成
String
int num = 10; String ret = String.valueOf(num); System.out.println(num);
String
转成
int
String str = "123"; int ret = Integer.valueOf(str); System.out.println(ret);
4.运算符
4.1:算数运算符
· 基本四则运算:+ - * %
除法中:0不能作为除数% 表示取余 , 不仅仅可以对 int 求模 , 也能对 double 来求模
·增量赋值运算符 += -= *= /= %=
·自增/自减运算符 ++ --
public static void main1(String[] args) {
int a = 10;
a++;//11
int s1 = a++;//先使用 后++ s1=a a=a+1
System.out.println(a);
System.out.println(s1);
int b = 10;
b++;//11
int s2 = b++;//先++ 后使用 b=b+1 s2 =b
System.out.println(b);
System.out.println(s2);
结论
:
1.
如果不取自增运算的表达式的返回值
,
则前置自增和后置自增没有区别
.
2.
如果取表达式的返回值
,
则前置自增的返回值是自增之后的值
,
后置自增的返回值是自增之前的值
.
4.2:关系运算符
·
== != < > <= >=
public static void main2(String[] args) {
int a = 10;
int b = 20;
System.out.println(a == b);
System.out.println(a != b);
System.out.println(a < b);
System.out.println(a > b);
System.out.println(a <= b);
System.out.println(a >= b);
注意
:
关系运算符的表达式返回值都是
boolean
类型
.
4.3:逻辑运算符
·
&& || !
4.4:位运算符
左移:<<
右移:>>
无符号右移:>>>
4.5:条件运算符
三目运算符:
int a = 10;
int b = 20;
int max = a > b ? a : b;
System.out.println(max)