【无标题】

java新建空项目

步骤:

new->Project->Empty Project->Next

配置:

File->Module->java->Module SDK(选择安装的jdk)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-760dMivi-1646488311278)(C:\Users\大神林\AppData\Roaming\Typora\typora-user-images\1646448622669.png)]

File->Project Structure->下图

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tZPUs5hY-1646488311279)(C:\Users\大神林\AppData\Roaming\Typora\typora-user-images\1646448568795.png)]

java注释

更改注释字体颜色

步骤

Setings->Editor->Color Scheme->java->comments

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HcKkG1vZ-1646488311280)(C:\Users\大神林\AppData\Roaming\Typora\typora-user-images\1646449193150.png)]

单行注释
//我是注释
多行注释
/*我是多行注释
111
222*/
文档注释
/**我是文档注释

*/
标识符

1.标识符可以以字母,下划线,$符号命名,

2.java标识符大小写很敏感,

3.Java标识符不能与关键字重名

八大数据类型

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kSLd5HnB-1646488311280)(C:\Users\大神林\AppData\Roaming\Typora\typora-user-images\1646453655507.png)]

补充

 //整数扩展:进制 八进制 0 十进制 十六进制0x
        int i = 0;
        int i1 = 010;//八进制
        int i2 = 0x13;//十六进制
        System.out.println(i);
        System.out.println(i1);
        System.out.println(i2);
        //浮点数扩展:银行业务怎么表示钱?
        //BigDecimal 数学工具类 来表示
        //float 有限 离散 舍入误差 大约 接近但不等于
        float i3 = 1.2F;//1.2
        double i4 = 12 / 10;//1.2
        System.out.println(i3 == i4);//false
        float i5 = 13223333222F;
        float i6 = i5 + 1;
        System.out.println(i5 == i6);//true
        //所以最好完全使用浮点数来进行比较

        //字符类扩展 所有的字符本身就是数字
        char i7 = 'a';
        char i8 = '中';
        System.out.println((int) i7);
        System.out.println((int) i8);//强制转换为int
        //编码 :Unicode表  :(a=97,A=65) 2个字节 0-65536 Excel 也是2的16 次方 65536
        //U0000  UFFFF
        char i9 = '\u0062';
        System.out.println(i9);//b
        //转义字符
        //\t 制表符  \n 换行 等等
        System.out.println("hello\tworld");
        //布尔值扩展:
        boolean flag = true;
        if (flag) {//等价于if(flag==true)
        }

数据类型的转换

低--------------------------------->高

byte,short,char–>int,float–>double

强制转换类型 由高到低 比如 int 转换为byte 语法:(类型)变量名

自动转换类型 由低到高

 int i=128;
        byte i1=(byte)i;//强制转换(类型)变量名 由高到低
        System.out.println(i);//128
        System.out.println(i1);//-128内存会溢出,因为byte类型是0-127
        byte i3=90;
        int i4=i3;//自动转换 由低到高
        System.out.println(i3);//90
        System.out.println(i4);//90
        char a1='a';
        int b1=a1+1;
        System.out.println(b1);//98
        System.out.println((char) b1);//b
        /*1.不能对布尔值进行转换
        2.不能把对象转换为不相干的类型
        3.在高容量转换为低容量的时候要进行强制转换
        4.在转换的时候会出现内存溢出或者精度问题
        * */

补充

 //当操作比较大的数时候,注意溢出的问题
        //JDK新特性 数字之间是可以用下划线分割的
        int money=10_0000_0000;
        int year=20;
        System.out.println(money);//1000000000
        int total1=money*year;
        System.out.println(total1);//-1474836480 其实呢这个溢出是因为两个int相乘的时候结果默认已经是int类型了
        long total2=money*year;
        System.out.println(total2);//-1474836480
        long total3=money*(long)year;//所以在乘的时候先把其中一个转换为long类型就可以了
        System.out.println(total3);//2000000000

变量

public class demo04 {
    //类变量
    static double salary=2500;
    //属性:变量
    //实例变量:从属于对象,如果没有自行初始化,这个类型的默认值为0,0.0  boolean类型为false
    //除了基本类型 其余的都是null
    String name;
    int age;
    //主方法
    public static void main(String[] args) {
        //局部变量,必须声明和初始化值
        int n=10;
        System.out.println(n);
        demo04 demo =new demo04();//变量类型 变量名字=new  Demo04();
        System.out.println(demo.age);//0
        System.out.println(demo.name);//null
        System.out.println(salary);//2500
    }
}

常量

public class demo05 {
    //常量 关键字final和static可以互换位置,因为都是修饰符 不区分顺序
    final  static double PI=3.14;
    public static void main(String[] args) {
        System.out.println(PI);
    }
}

变量的命名规范

  1. 所有的变量,类名,方法都要见名知意
  2. 类成员变量:首字母小写和驼峰原则 lastName
  3. 局部变量:首字母小写和驼峰原则
  4. 常量:大写字母和下划线 MAX_VALUE
  5. 类名:首字母大写和驼峰原则 Man
  6. 方法名:首字母小写和驼峰原则 man(),runMan()

运算符

 long a=112223344L;
        int b=10;
        short c=5;
        byte d=2;
        //只要有long类型计算会是long类型,其余的为int类型
        System.out.println(a+b+c+d);//112223361 long类型
        System.out.println(b+c+d);//17 int 类型
        System.out.println(c+d);//7 int 类型 
 //幂运算
        double pow =Math.pow(2,3);//2^3=8.0

逻辑运算符

    //逻辑运算符
    public static void main(String[] args) {
        //与 and 或 or 非 取反
        boolean a=true;
        boolean b=false;
        System.out.println("a&&b :"+(a&&b));//两个变量为真才为true
        System.out.println("a||b :"+(a||b));//两个只要有一个true结果就为true
        System.out.println("!(a&&b) :"+!(a&&b));//结果与括号的相反
    }
 // 短路运算
        int d=5;
        boolean c=(d>5)&&(d++<7);//当程序执行到d>5时,结果为false 后面的d++就不会执行了
        System.out.println(d);//5
        System.out.println(c);//false

位运算

    /*位运算
    A=0010 1100
    B=0011 1001
    A&B=0010 1000  两个为1才为1
    A|B=0011 1101  两个为0才为0
    A^B=0001 0101  两个相同为0,不相同为1(逆否)
    ~B=1100 0110   取反
    面试题:问2*8怎么样计算最快?
    << *2 左移运算符
   >> /2 右移运算符
   0000 0000     0
   0000 0001     1
   0000 0010     2 当0000 0010 往左边移动3位时,得到了0001 0000=16
   0000 0011     3
   0000 0100     4
   0000 0101     5
   0000 0110     6
   0000 0111     7
   0000 1000     8
   0001 0000     16
   System.out.println( 2<< 3);//16

字符串连接符

  //面试题:问下面输出为什么是这样?
        //字符串连接符 +
        int a=10;
        int b=20;
        System.out.println(""+a+b);//1020
        System.out.println(a+b+"");//30
        //因为当字符串在前面 a+b会进行拼接,字符串在后面 a+b正常运算 ("")空字符串

三目运算符

//三目运算符
        //x ? y : z 如果x为true 结果为 y 否则为z
        int score =59;
        String type= score>60?"及格":"不及格";
        System.out.println(type);//不及格
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值