Java学习_20220606
1. 整型 进制:二进制用0b表示、八进制用0、十六进制用0x
int q = 11; //十进制 //11
int q1 = 0b010; //二进制 0b开头 //2
int q2 = 011; //八进制 0开头 //9
int q3 = 0x16; //十六进制 0x开头 //22
2. 类型转换
低到高:byte,short,char ——>int——>float——>double
高-->低:强制转换 (类型)变量名
低-->高:自动转换
int w =12;
byte b = (byte)w; //12
double d = w; //12.0
//不能对布尔值进行转换,转换的时候可能存在内存溢出,或者精度问题
int r = 128;
byte by = (byte)r; //内存溢出
System.out.println((int)23.7); //23
System.out.println((int)-45.89f); //-45
char c='a';
int x =c+1; //x=98 (char)x='b'
3. 变量和常量
(1)局部变量 :必须声明和初始化值
(2)实例变量:从属于对象,如果不进行初始化,将变成这个类型的默认值。布尔值初始值为false.
(3)类变量:static,,,使用static不需要new初始化一个对象,可直接使用。
(4)常量:设定后,在程序中不再改变,final修饰符。
public class dome1 {
int age = 13;
String name;
static double salary = 2500;
static final double p = 1.68; //修饰符前后不用区分
public static void main(String[] args) {
dome1 dome1 = new dome1();
dome1.age=10;
dome1.name="Joyce";
System.out.println(dome1.age);
System.out.println(dome1.name);
System.out.println(salary);
}
}
4. 位运算
a^b: 亦或,相同为0,不同为1
a = 0011 1100
b = 0000 1101
a^b = 0011 0001
System.out.println(2<<3);//16
// << 乘以2 >> 除以2
5. 三元运算符
int a = 10;
int b = 20;
a+=b; //a=a+b
a-=b; //a=a-b
//字符串连接符
System.out.println(""+a+b); // 1020
System.out.println(a+b+""); // 30
String ty = a>5 ? "值大":"值小"; //值大
System.out.println(ty);
6. 用户交互-Scanner
scanner.next()遇到空格就结束,scanner.nextLine()遇到回车键才结束,较为常用。
Scanner scanner = new Scanner(System.in);
/*
if(scanner.hasNext()){ //判断用户有没有输入字符串
String s = scanner.next(); //接收用户输入,以空格为结束符
System.out.println("输出:"+s);
}*/
String str = scanner.nextLine(); //以回车键为结束符
System.out.println("输出"+str);
//凡是属于IO流的类不关闭会一直占用资源
scanner.close();
若输入为int类型,可以用scanner.hasNextInt()以及scanner.nextInt()表示,float、double亦如此。
浙公网安备 33010602011771号