Java基础II
逻辑语言
-
表示
/*a&&b:a and b a||b:a or b !(a&&b):a and b 结果取相反 */
-
⚠️若a&&b执行中,a为false已经可以判断a&&b为false,则不会继续执行b的指令,在a处即短路
//短路运算 int c = 5; booleand d = (c<4)&&(c++<4); System.out.println(d); System.out.println(c); //输出d为false;c为5; 可见并未执行后续c++
位运算
-
表示
/* A = 0011 1100; B = 0000 1101; -------------- A&B = 0000 1100; (AB上下都是1则为1,否则为0) A|B = 0011 1101; (AB上下都是0则为0,否则为1) A^B = 0011 0001; (AB上下相同则为0,否则为1) ~B = 1111 0010; (取B中相反,1为0,0为1) << 左移:*2 >> 右移:/2 ex.最快计算2*8的方法: 0000 0000 0 0000 0001 1 0000 0010 2 0000 0100 4 0000 1000 8 0001 0000 16 ....... 2*8 = 2<<3; ps. 0000 0011 3
字符串连接符
-
表示
int a = 3; int b = 4; System.out.println(""+a+b); //""是string类型,故把后面a+b也变为string类型加法,因此输出34 System.out.println(a+b+""); //运算从左到右,输出7
三元运算符
-
表示
// x ? y : z; // 若x为true,则返回结果y,否则返回结果z //ex int score = 80; String type = score<60 ? "不及格" : "及格"; System.out.println(type); //输出type为及格
包机制
-
语法格式
package pkg1[. pkg2[. pkg3...]];
-
一般利用公司域名倒置作为包名 eg. com.baidu.www
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4sIghvsn-1624526124726)(/Users/jialewang/Desktop/图像2021-6-24 下午3.39.jpg)]
-
若要使用某个包的成员,需在Java程序中导入该包:
import package1[.package2...].(classname|*); //classname即此包中的成员;*则表示导入此包中的所有成员
JavaDoc
-
JavaDoc命令是用来生成自己的API文档
-
参数信息:
@author 作者名
@version 版本号
@since 指明需要最早使用的jdk版本
@param 参数名
@return 返回值情况
@throws 异常抛出情况
-
语法格式
/** *@author LE *@version 1.0 */
Java流程控制
Scanner
Scanner对象
-
基本语法
Scanner s = new Scanner(System.in);
-
通过Scanner类的next()和nextline()方法获取键盘输入字符串,在读取前我们一般需要使用hasNext()与hasNextline()判断是否还有输入的数据(也可不判断)
next():
- 对输入有效字符之前遇到的空白,next()方法会自动将其去掉
- 只有输入有效字符后才将其后面输入的空白作为分隔符或结束符
- next()不能得到带有空格的字符串
nextLine():
1. 以Enter键为结束符,即nextLine()方法返回的是输入回车之前的所有字符
2. nextLine()可以获得空白
去掉判断也完全可以:
-
使用完Scanner类后一定要关闭!!
scanner.close();
-
Scanner有着许多用法,使用Scanner.即可获取