提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
学习java的第二天,字符串变量以及运算符
当我们在c语言中以前遇到过如下的代码
char* ch="thank you";
此时ch仅仅表示一个指针变量,存放的是t的指针。
而在java语言中,我们有字符串变量,如下方法使用:
string ch="thank you";
在java语言中没有所谓的以\0结尾的字符串!!!
在我们使用字符串常量时,我们可以将两个字 +符串常量相加,可以取到拼接的作用
例如:
- string ch="abcdef";
- string ch2="ghi";
- system Out println(ch+ch2)
此事篇目将会输出abcdefghi。
java中sout也是从右往左进行的
例如:
- int num = 10;
- int num2 =20;
- system Out println(num+num2);
此时输出30
例2:
- int a=10;
- int num2=20;
- system Out println("a="+a)
当此时,输出的结果是:a=10;
任何数据类型和字符串相加,结果是字符串
例3:
- int a=10;
- int b=20;
- system Out println("a+b="+a+b)
此时的结果是:a+b=1020
原因:从左往右,先是“a+b=10”是一个字符串再拼接一个b
当我们要把整数变成字符串时,有一个string.valueof()这样的函数,可以将整数变成字符串
如果要将字符串变成整数,那么我们就要用一个Integer.valueof(),以此类推Douoble.valueof()等等等
都是二元运算符,使用时必须要有左右两个操作数
int / int 结果还是int类型,而且会向下取整
做除法和取模时,右操作数不能为0
% 不仅可以对整型取模,也可以对double类型取模,但是没有意义,一般都是对整型取模的
两侧操作数类型不一致时,向类型大的提升
- System.out.println(a == b); // false
- System.out.println(a != b); // true
- System.out.println(a < b); // true
- System.out.println(a > b); // false
- System.out.println(a <= b); // true
- System.out.println(a >= b); // false
当输出的东西是这些时,将输出布尔类型,true/false
逻辑与:
&&

当输出结果是1/0时,会爆出异常信息,同时空指针,不支持克隆等等异常报错
而&与&&的区别仅仅在于不能短路
2. 逻辑 ||
语法规则:表达式1 || 表达式2,左右表达式必须是boolean类型的结果。
表达式1 表达式2 结果
真 真 真
真 假 真
假 真 真
假 假 假
对应位有0为0
全1才为1;
有一为一,无1为0
不一样是1,一样为0;
特点:
两个相同的数字异或是0
0^n=n;
较为简单,不加赘述了
左边去掉,右边补0
经过实验我们可以得知,左移n位相当于乘以2的n次方
右边去掉,左边补0(正数补0.负数补1)
经过实验我们可以得知,右移n位相当于除以2的n次方
乘除法只针对正数,对于负数来说并不适用
统统在左边补0
布尔表达式1?表达式2:表达式3
表达式为真的时候返回2,否则返回3
简单讲了一下字符串变量,强制类型转化,运算符