Java学习基础:基础语法02

类型转换

  • 字节小(容量小)----------------------------------------------------------------------------------->字节大(容量大)

byte,short,char -> int -> long ->float-> double(小数的优先级大于整数)

  • 运算中,不同类型的数据先转化为同一类型,然后进行运算。

  • 大转小强制转化,小转大自动转化

注意点

  1. 不能对布尔值进行转换

  2. 不能把对象类型转换为不相干的类型

  3. 把高容量转换转换到低容量的时候,强制转换

  4. 转换的时候可能存在内存溢出,或者精度问题

    public class Demo04 {
        public static void main(String[] args) {
            int i=128;
            byte b=(byte) i;//内存溢出,byte范围(+127~-128)输出结果有误为-128
            System.out.println(b);
            //强制转化   (类型)变量名  高->低
            //自动转换    什么都不做     低->高
            double c=i;
            System.out.println(c);
    //JDK新特性,数字之间可以用下划线分割,输出时无误
    //操作比较大的数字时候,注意溢出问题
            int money=10_0000_0000;
            int years=20;
            long total=money*((long)years);//先把一个数强制转换为long
            System.out.println(total);


        }
    }
     

变量

注意事项:

  1. 每个变量都有类型,类型可以是基本类型,也可以是引用类型

  2. 变量名必须是合法的标识符

  3. 变量声明是一条完整的语句,因此每一个声明都必须以分号结

    变量作用域

    • 类变量 (写在类里面的)

    • 实例变量 (可以写在类中间)

    • 局部变量 (写在方法里面)

      public class Demo05 {

          //实例变量:从属于对象,不需要初始化值,如果不初始化值数值型默认为0
          // 除了基本类型默认值都为null,布尔值默认为false
          String name;
          int age;

          //类变量 static
          static double salary=2500;

          public static void main(String[] args) {
              //局部变量:必须声明和初始化值
              int i=0;
              System.out.println(i);

              //实例变量:变量类型 变量名字 =new Demo05()
              Demo05 demo05 = new Demo05();//先敲 new Demo05()然后alt+enter+ernter
              System.out.println(demo05.age);

              //类变量:static
              System.out.println(salary);

          }
      }
       

常量

初始化后不能再改变值,不会变动的值。

属于一种特殊的变量,被设定后,在程序运行过程中不允许被改变。

常量名一般使用大写字符。

public class Demo06 {
    //final属于修饰符,不存在先后顺序
    static final double PI=3.14;

    public static void main(String[] args) {
        System.out.println(PI);

    }
}
 

变量命名规范:

  • 所有变量、方法、类名:见名知意

  • 类成员变量:首字母小写和驼峰原则:monthSalary

  • 局部变量:首字母小写和驼峰原则

  • 常量:大写字母和下划线:MAX_VALUE

  • 类名:首字母大写和驼峰原则:Man,GoodMan

  • 方法名:首字母小写和驼峰原则:run(),runRun()

基本运算符

  1. 算数运算符:+,-,*,/,%,++,--

  2. 赋值运算符:=

  3. 关系运算符:>,<,>=,<=,==,!=instanceof

  4. 逻辑运算符:&&,||,!

  5. 位运算符:&,|,^,~,>>,<<,>>>

  6. 条件运算符:?:

  7. 扩展赋值运算符:+=,-=,*=,/=

优先级:

img

package operator;
//计算时会遇到的数据类型转变
public class Demo02 {
    public static void main(String[] args) {
        long a=1233339999393939933L;
        int b=122;
        short c=10;
        byte d=8;
        System.out.println(a+b+c+d);//结果为long
        System.out.println(b+c+d);//结果为int
        System.out.println(c+d);//结果为int
        //计算数值时会自动转换为其中最大容量的类型,
        // 如果类似short+byte同级别的转化为上一级int
    }
}

package operator;

public class Demo03 {
    public static void main(String[] args) {
        //关系运算符返回结果:true false 布尔值
        int a=10;
        int b=20;
        int c=21;
        System.out.println(c%a);//取余,模运算
        System.out.println(a>b);
        System.out.println(a<b);
        System.out.println(a==b);
        System.out.println(a!=b);
    }
}
 

package operator;

public class Demo04 {
    public static void main(String[] args) {
        //++自增   --自减
        int a=3;
        int b=a++;//后置自增,a先不变,代码执行结束后再增加
        int c=++a;//前置自增,a先自增,代码执行再赋值
        System.out.println(a);
        System.out.println(b);
        System.out.println(c);


        //幂运算,math工具
        double pow = Math.pow(2, 3);
        System.out.println(pow);

    }
}
 

package operator;

public class Demo05 {
    public static void main(String[] args) {
        //逻辑运算符:与(&&)或(||)非(!)
        boolean a=true;
        boolean b=false;
        System.out.println("a&&b:"+(a&&b));//全真为真
        System.out.println("a||b:"+(a||b));//全假为假
        System.out.println("!(a&&b):"+!(a&&b));//真为假
        //有一个短路操作,当有 (b&&a) 时,已经判断b为假了,
        // 整体返回false,a就不会去运行了。

    }
}
 

package operator;

public class Demo06 {
    public static void main(String[] args) {
        /*
        位运算符
        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(取反操作)

       << 左移相当于乘2
       >> 右移相当于除2
         */
    }
}
 

package operator;

public class Demo07 {
    public static void main(String[] args) {
        //字符串连接符   +
        int a=10;
        int b=20;
        System.out.println(a+b);//30
        System.out.println(""+a+b);//1020
        System.out.println(a+b+"");//30
        //如果先出现像string类型的字符,会把剩余类型转化为string类型然后进行拼接
        //如果后出现string,前面还是运算,后面拼接
    }
}
 

package operator;
//三元运算符
public class Demo08 {
    public static void main(String[] args) {
        //x?y:z
        //如果x==true,则结果为y,否则结果为z
        int score =50;
        String type=score<60?"不及格":"及格";
    }
}

包机制

包的本质就是文件夹

包名一般利用公司域名倒置,如:www.baidu.com,——>包名为:com.baidu.www

定义包(放在所有代码的最开头),package pkg1[.pkg2[.pkg3……]];

导入包,import package1[.package2……].(classname|*);

*为通配符,可以将这个包下所有的类都导进去

import com.wyl.base.*

有时间看阿里巴巴开发手册

JavaDoc生成文档

jdk帮助文档

百度云:链接:百度网盘 请输入提取码 提取码:85dc

  • 参数信息

    • @author 作者名

    • @version 版本号

    • @since 指明需要最早使用的jdk版本

    • @param 参数名

    • @return 返回值情况

    • @throws 异常抛出情况

package com.wyl.base;

/**类注释
 * @author wyl
 * @version 1.0
 * @since 1.8
 */

public class Doc {
    String  name;

    /**方法注释
     *
     * @param name
     * @return
     * @throws Exception
     */
    public String test(String name)throws Exception
    {
        return name;
    }
}
 

通过命令行把java代码编译成文档

 

 作业:学会查找使用IDEA生成JavaDoc文档

(2条消息) 使用IDEA生成JavaDoc文档(IDEA2020.3.2)_Gyur Miyonesqn的博客-CSDN博客

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值