码迷,mamicode.com
首页 > 编程语言 > 详细

Java基础语法

时间:2021-04-28 12:15:31      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:stat   charset   输出   public   OLE   内容   数据类型   除了   list   

Java基础语法

狂神说Java

注释

Java中的注释有三种:

单行注释:// line

多行注释: /* 内容 */ block

文档注释:/** +回车 自动输出

标识符

  1. Java所有的组成成分都需要名字,类名、变量名以及方法都被称为标识符。

  2. 所有的标识符都应该以字母(A-Z或a-z)、美元符($)或下划线(_)开始。

  3. 标识符都是大小写敏感的。

数据类型

Java是一种强类型语言,要求变量的使用要严格符合规定,所有的变量都必须先定义后才能使用。

Java的数据类型分为两大类:

基本类型(Prinmitive type)

数值类型

  • 整数类型:

    1. byte 占1个字节范围(-127~127);

    2. short 占2个字节范围( -32768~32767);

    3. int 占4个字节范围(-231~231);

    4. long 占8个字节范围(-2?3~2?3);

  • 浮点类型:

    1. float 占4个字节,范围为-127~128(使用时在数字后+f),float属于单精度型浮点数据。;

    2. double 占8个字节,范围为-1023~1024,double属于双精度型浮点数据;

  • 字符类型:

    1. char 占2个字节;

Boolean类型

占一位,其值只有true和false;

引用类型:

  • 接口

  • 数组

整数类型拓展

进制:

int data1=0b10;//二进制
int data2=10; //十进制
int data3=010;//八进制
int data4=0x10;//十六进制

浮点类型拓展

!!!最好完全避免使用浮点数进行比较(原因是float和double直接存在精度问题)

float data1=0.1f;
double data2=0.1;
System.out.println(data1==data2);
//输出结果为false,

字符类型拓展

所有字符的本质还是数字;

编码 Unicode 2个字节 0~21?(65536);

char data2=‘\u0062‘;//输出是b
String data1=new String("hello");
String data2=new String("hello");
String data3="hello";
String data4="hello";
System.out.println(data1==data2);//输出为false
System.out.println(data3==data4);//输出为ture

类型转换

由于Java是强类型语言,所以要进行一些运算的时候需要用到类型转换。

低————————————————>高

byte,short,char->int->long->float->double;

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

注意点:

  1. 不能对boolean类型的值进行转换;

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

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

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


操作比较大的数的时候,注意溢出问题;JDK7新特性,数字之间可以用下划线分割;

int money=10_0000_0000;//下划线不会被输出
int years=20;
int total=money*years;
long total2=money*(long)years;
System.out.println(money);
System.out.println(years);
System.out.println(total);//输出-1474836480,计算发生了溢出
System.out.println((long)total);//输出同上,因为money和years默认是int类型,转换之前就已经出现问题了所以这样解决不了
System.out.println(total2);//输出正常。所以碰到此类问题可以先把一个变量改下数据类型即可

变量

Java是一种强类型语言,每一个变量都必须声明其类型;

Java变量是程序中最基本的存储单元,其要素包括变量名、变量类型和作用域。

注意事项:

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

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

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

变量作用域:

类变量、实例变量、局部变量

public class Demo1 {
   //类变量,可以直接在此类的方法中应用
   static double salary=2500;
?
   //实例变量,从属于对象;若不自行初始化,则系统默认使用这个类型的默认值
   //布尔值的默认值式false!!!
   //除了基本类型,其他的默认值都是null
   String name;
   int age;
?
   public static void main(String[] args) {
?
       //局部变量:必须声明和初始化值
       int i=10;
       System.out.println(i);
?
       //实例变量
       //变量类型 变量名 =new 变量类型();
       Demo1 d1=new Demo1();
       System.out.println(d1.age);
       System.out.println(d1.name);
?
       //类变量
       System.out.println(salary);
?
  }
}

 

常量

常量初始化后将不再改变值(常量是不可变动的值);

所谓常量,可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。

关键词:final 语法:final 常量名=值;

常量名一般用大写。

修视符不存在先手顺序

public class Demo02 {
?
   final static double PI=3.14;
   static final double PI2=3.14;
   public static void main(String[] args) {
       System.out.println(PI);
       System.out.println(PI2);
       //PI的输出值与PI2的输出值相同无变化
  }
?
}

变量命名规范

  1. 所有变量名、方法、类名要见名知意;

  2. 类成员变量:首字母小写和驼峰原则;例如:monthSalary;除了第一个单词以外,后面的单词首字母大写。

  3. 局部变量:首字母小写和驼峰原则;

  4. 常量:大写字母和两单词之间用下划线连接,例如:MAY_VALUE;

  5. 类名:首字母大写和驼峰原则;

  6. 方法名:首字母小写和驼峰原则;

运算符(operator)

Java语言支持如下运算符:

  • 算数运算符:+、-、*、/、%(模运算,取余)、++(自增)、--(自减);

  • 复制运算符:=;

  • 关系运算符:>、<、>=、<=、==、!=、instanceof;(返回值的结果是true/false)

  • 逻辑运算符:&&、||、!(非运算);

  • 位运算:&、|、^(异或)、~、>>(右移,数字*2)、<<(左移,数字/2)、>>>;

  • 条件运算符:?;

  • 扩展赋值运算符:+=、-=、*=、/=;

不同的数据类型做二元运算的结果

package operator;
?
public class Demo02 {
   public static void main(String[] args) {
       long a=1234151515L;
       int b=123;
       short c=10;
       byte d=8;
       double e=10.4;
       System.out.println(a+b+c+d);//输出结果为long类型
       System.out.println(b+c+d);//输出结果为int类型
       System.out.println(c+d);//输出结果为int类型
       System.out.println(a+b+c+d+e);//输出结果为double类型
       /*
       高一级的数据类型与低级的数据类型做运算时,得出的结果是高级的数据类型
        */
  }
}

自增、自减以及Math中的幂运算

package operator;

public class Demo03 {
    public static void main(String[] args) {
        // ++  -- 一元运算符
        int a=3;

        int b=a++;//a++ a=a+1 执行完代码后,先给b赋值,在自增,
        //a=a+1;
        System.out.println(a);//输出结果为a,a++相当于隐藏了上面一行的代码,++a相当于隐藏了下面一行的代码
        //a=a+1;
        int c=++a;//++a a=a+1 执行完代码后,先自增,后赋值

        System.out.println(a);
        System.out.println(b);
        System.out.println(c);

        //幂运算 2的3次方 很多运算使用工具类操作
        double pow = Math.pow(2, 3);
        System.out.println(pow);
    }
}

逻辑运算符

&&运算中会出现短路运算,当程序运行碰到假后,&&后面的代码将不在执行。

位运算

与二进制有关,效率高

2*8最快得出结果:2<<3;

字符串连接符

int a=10;
int b=20;
//  + 为字符串连接符
system.out.println(""+a+b);//输出结果为1020,即""后方+号所连接的会产生拼接效果而非算数运算
system.out.println(a+b+"");//输出结果为30,反之则会产生算数运算;

三元运算符

x?y:z;//如果x==true,则结果为y,否则结果为z

包机制

一般利用公司域名倒置作为包名;

Java Doc(文档注释)

参数信息

  • @autor 作者名

  • @version 版本号

  • @since jdk版本号

  • @param 参数名

  • @return 返回值

  • @throw 异常抛出

通过使用命令行生成java doc文档

命令格式 :文件路径 javadoc -encoding UTF8 -charset UTF8 xxx.java

-encoding UTF8 -charset UTF8:字符编码

xxx.java:需要导出javadoc的Java文件名

 

 

Java基础语法

标签:stat   charset   输出   public   OLE   内容   数据类型   除了   list   

原文地址:https://www.cnblogs.com/shiwangmmp/p/14711718.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!