//字符串连接符 + 顺序不同 结果不同 ""是字符串String
int a=1,b=1;
System.out.println(""+a+b);//拼接 把后面转化为String再运算
System.out.println(a+b+"");//前面先运算int再加String
System.out.println("=================================");
//三元运算符 x?y:z
//如果x==ture 结果为y 否则为z
int salar = 6000;
String type = salar<10000?"不达标":"勉强达标";
System.out.println(type);
//转义字符 \t
System.out.println("hello\tworld!");
//布尔值 默认为false
boolean flag = true;
if (flag == true) {
}
if(flag);
//所有字符的本质是数字 编码 Unicode
char c1 = 'a';
char c2 = '中';
System.out.println(c1);
System.out.println(c2);
System.out.println((int) c1);
System.out.println((int) c2);
//最好避免使用浮点数进行比较
float f = 0.1f; // 0.1 注意在数字后面加上f
//float 接近但不等于
//包机制 本质为文件夹 导入包 import package1... *就是导入这个包下所有的类
//JavaDoc生成文档 有点意思
/**
* @author qingxing
* @version 1.0
* @since 1.8
*/
public class Doc {
String name;
/**
* @author qingxing
* @param name
* @return
* @throws Exception
*/
public String test(String name)throws Exception{
return name;
}
}
/*强制转换 (类型)变量名 高到低
自动转换 低到高
精度问题和内存溢出
1.数字可以写下划线 方便区分0的个数 不会输出其他的
*/
//驼峰原则 lastName l N
//实例变量 string,int... 有默认值 0,null 布尔值默认为false
//类变量 static *final定义常量 后面常量一般大写
static final double PI = 3.14;
//*类 two6
public class Two6 {
//**方法
public static void main(String[] args) {
//局部变量 :必须声明和初始化值
int i = 10;
//在方法里引用类的实例变量
System.out.println(two6.name);
//在方法里引用类的类变量
System.out.println(PI);
}
//***其他方法
public void add(){}
}
// 数学工具Math
double pow = Math.pow(2, 3); //2的3次方
// 逻辑运算符 位运算符
//逻辑运算符
&& 与 两个都为真才true
|| 或
! 取反 真的变为假 假边真
//位运算符(二进制) & , | , ^ , 》 , 《
A = 0011 1100
B = 0000 1101
一位一位来 ------------------------
A&B= 0000 1100 同位下有一个为0则为0
A/B= 0011 1101 同为下有一个1则为1
A^B= 0011 0001 位置相同为0 反之1
~B = 1111 0010 取反
问题2*8=16怎么更快得到结构 2*2*2*2
·重点引出 <<左移 *2
>>右移 /2
0000 0000 0
0000 0001 1
0000 0010 2
0000 0011 3
0000 0100 4
0000 1000 8
0001 0000 16
System.out.println(2<<3);//2左移3位