2022.1.4
1.变量
变量作用域
- 类变量
static double salary=2500;
- 实例变量
实例变量: 从属于对象(类); 在方法外,类之内。如果不进行初始化,这个类型的默认值 0 0.0 ,布尔值默认是false String name; int age;
- 局部变量
//局部变量;必须声明和初始化值 int i=10; System.out.println(i);
public class demo8 { //类变量 static static double salary=2500; //属性:变量 //实例变量: 从属于对象(类); 在方法外,类之内。如果不进行初始化,这个类型的默认值 0 0.0 // 布尔值默认是false //除了基本类型,其余的默认值都是null String name; int age; //main方法 public static void main(String[] args) { //局部变量;必须声明和初始化值 int i=10; System.out.println(i); new demo8(); System.out.println(salary); } //其他方法 public void add(){ System.out.println(); } }
变量的命名规范
- 所有的变量、方法、类名:见名知意
- 类成员变量:首字母小写,除了第一个单词以外,后面的单词首字母大写monthSalary、lastName
- 局部变量:同上
- 常量:全部使用大写字母,若较多使用下划线:MAX_VALUE
- 类名:首字母大写,Demo、Hello
- 方法名:首字母小写和驼峰原则:run()、runRun().
2.常量
常量初始化之后不能改变值,在程序运行中不允许被改变。
final 常量名=值; //常量名一般使用大写字符
final double PI=3.14;
短路运算
a&&b,判断a为false时,后面不用进行计算。
int c=5;
boolean d=(c<4)&&(c++<4);
System.out.println(d);
System.out.println(c);
//输出 false
5
与二进制有关的运算符
A=0011 1100
B=0000 1101
A&B =0000 1100 //每一位进行比较,若都为1,则为1
A|B =0011 1101 //有一个1则为1;
A^B (异或)=0011 0001 //相同为0,不同为1
~B (取反)=1111 0010
3.用户交互Scanner
next方式接收
(1)一定要读取到有效字符后才可以结束输入。
(2)对输入有效字符之前遇到的空白,next()方法会自动将其去掉
(3)只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符
(4)next()不能得到带有空格的字符串
package Scanner;
import java.util.Scanner;
public class Demo1 {
public static void main(String[] args) {
//创建一个扫描器对象,用于接受键盘数据
Scanner scanner = new Scanner(System.in);
System.out.println("使用next方法接收:");
//判断用户有没有输入字符串
if(scanner.hasNext()){
//使用next方法接收:
String str=scanner.next();//程序会等待用户输入完毕
System.out.println("输出的内容为:"+str);
}
scanner.close();//凡是属于IO流的类,如果不关闭会一直占用资源,要养成良好习惯用完就关掉
}
}
输出:
使用next方法接收:
hello xiaoma
输出的内容为:hello
nextLine()://用的较多
(1)以Enter为结束符,此方法返回的是输入回车之前所有的字符。
(2)可以得到空白。