ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

JavaSE的基础内容

2022-02-24 18:01:36  阅读:112  来源: 互联网

标签:String int 基础 System 内容 println JavaSE public out


JavaSE基础内容

Java的注释

public class Helloworld {
    public static void main(String[] args) {
        System.out.println("hellowprld");
        //输出一个Hellowprld
        /*我是多行注释


         */
        /**
         *
         * 我是文档注释
         */
    }
}

标识符

public class Demo01 {
    public static void main(String[] args) {
        String Alloh="dhij";
        String hello="jdgh";
        String _dja="ugd";
        String 1hauf="bhuf";
        String #jfbhg="gy";//错误
        String class=" b";//错误
    }
}

java所有的组成部分都需要名字,类名,变量名以及方法名都被称为标记符

所有标识符都应该以字母,美元符($)下划线(_)开头

首字符之后可以是字母,美元符,下划线,或者任意数字的组合

不能采用关键字作为变量名或方法名

标识符是大小学敏感的

合法标识符举例:age,$salary,_value

非法标识符举例:123age,-salary,#abc

可以使用中文命名,但一般不这么做

数据类型

强类型语言:要求变量的使用必须要严格符合规定,所有变量必须先定义在使用

弱类型语言:可不符合规定,如JavaScript

Java数据类型俩大类:

  • 基本类型
  • 引用类型

基本类型:

数值类型:整数类型,byte,short,int long

​ 浮点数类型:float,double

​ 字符类型char:俩个字节

boolean:占一位字节,值只有true和false

public class Demo02 {
    public static void main(String[] args) {
       // String a=10;//string是字符串,但是10是int型
        String a="hello";
        int num=10;
        System.out.println(a);
        System.out.println(num);
        //整数四种表示方式
        int num1=10;
        byte num2=20;
        short num3=30;
        long num4=244891l;//long类型的数字后面要加l
        //浮点型表示
        float num5=24.32478F;//float类型后加F
        double num6=3.1415926;
        //字符
        char name='A';
        //string不是关键字,类
        String name1="qingjiang";
        //bool值
        boolean flag=true;
        boolean flag2=false;
    }
}

引用类型:

类,接口,数组

扩展内容

public class Demo03 {
    public static void main(String[] args) {
        //整数拓展 : 进制   二进制0b  十进制   八进制0    十六进制0x
        int i=10;
        int i1=010;//八进制
        int i3=0x10;//十六进制
        System.out.println(i);
        System.out.println(i1);
        System.out.println(i3);
        System.out.println("===========================================");
        //===================================================
        //浮点数扩展        银行业务
        //BigDecimal 数学工具类
        //===================================================
        //float   有限 离散 舍入误差 大约 接近但不相等
        //double
        //最好完全避免使用浮点数进行比较
        //最好完全避免使用浮点数进行比较
        //最好完全避免使用浮点数进行比较
        float f=0.1f;
        double d=0.1;
        System.out.println(f==d);
        System.out.println(f);
        System.out.println(d);
        float d1=231231231231231f;
        float d2=d1+1;
        System.out.println(d1==d2);
        System.out.println(d1);
        System.out.println(d2);
        System.out.println("================================================");
        //====================================================================
        //字符拓展
        //===================================================================
        char a='a';
        char a1='中';
        System.out.println(a);
        System.out.println((int)a);//强制转化
        System.out.println(a1);
        System.out.println((int)a1);//强制转换
        //所有的字符本质还是数字
        //编码   Unicode 表:(a 97 A 65)  2字节  0-65536   Excel  2 16=65536
        //u0000 Uffff
        char a2='\u0061';
        System.out.println(a2);

        //转义字符
        //\t  制表符
        //\n  换行
        System.out.println("hello\nworld");

        System.out.println("=========================================================");
        String sa=new String("hello world");
        String sb=new String("hello world");
        System.out.println(sa==sb);

        String sc="hello world";
        String sd="hello world";
        System.out.println(sc==sd);
        //对象 从内存分析
        
        //布尔值扩展
        boolean flag=true;
        if(flag==true)//if(flag)意思相同
        {
            
        }
    }
}

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

类型转化

java为强类型语言,运算是可能要用到类型转化

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

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

运算时,将不同类型转化为同一类型

public class Demo04 {
    public static void main(String[] args) {
        int i=128;
        byte b=(byte)i;//强制转化格式   (类型)变量名 从高到底
        double b2=i;//自动转换,由低到高

        System.out.println(i);
        System.out.println(b);//byte最大为127,故内存溢出
        /*
        注意点:
        1.不能对bool类型进行转化
        2.不能把对象类型转化为不相关类型
        3.把高容量转入低的为强制转换
        4.转化时可能存在内存溢出,,或者精度问题!
         */
        System.out.println((int)-45.89f);
        char c='a';
        int d=c+1;
        System.out.println(d);
        System.out.println((char)d);
        //操作比较大的时候,注意溢出
        //JDK7新特性,数字之间可以用下划线分割
        int money=10_0000_0000;
        int years=20;
        int total=money*years;//-1474836480计算时已溢出
        long total2=money*years;//默认为int ,转换之前已经存在问题

        long total3=money*((long)years);//先把一个数转化为long型
        System.out.println(total3);
    }
}

变量

变量:可以变化的量(确定的位置,变化的内容)

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

数据类型 变量名=值;

注意点:

每一个变量都有类型,可以是数据类型,也可以是引用类型

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

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

public class Dome05 {
    public static void main(String[] args) {
       // int a,b,c;
       // int a=1,b=2,c=3;  //程序可读性
        String name="qinjiang";
        char x='a';
        double pi=3.14;
    }
}

变量作用域

  • 类变量
  • 实例变量
  • 局部变量
public class Dome06 {
    //属性:变量

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

    //实例变量,从属于对象;
    //实例变量不初始化,则为该类型的默认值 0   0.0
    //bool---->false   除了基本类型其余默认值都为null
    String name;
    int age;

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

        //实例变量的使用
        //变量类型 变量名字=new Demo06();
         Dome06 demo06=new Dome06();
        System.out.println(demo06.name);

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

    }
    //其他方法
    public void add(){
        //System.out.println(i);错误
    }
}

常量

常量:初始化以后不可以改变的值

一种特殊变量,它的值一旦被设立,在程序运行过程中就不允许被改变

final 常量名=值;

final double PI=3.14;

常量名一般使用大写字母

public class Demo07 {

    //修饰符,不区分先后顺序(static,final,public,private等等)
    static final double PI=3.14;
    final static double PI1=3.14;

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

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

变量命名规范:

所有的变量.方法.类名:见名知意

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

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

常量:大写字母与下划线MAX_VALUE

类名:首字母大写与驼峰原则Man

方法名:首字母大写与驼峰原则:run()

运算符

Java语言支持的运算符:

算术运算符:+ ,-,*,/,%,++,–

赋值运算符:= 把后面的数赋值给变量

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

逻辑运算符:&&与,||或,!非

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

条件运算符:?:

扩展运算符:+=,-=,*=,/=

优先级:()最高

public class Demo01 {
    public static void main(String[] args) {
        //二元运算符
        //ctrl+D复制当前行到下一行
        int a=10;
        int b=20;
        int c=25;
        int d=25;

        System.out.println(a+b);
        System.out.println(a-b);
        System.out.println(a*b);
        System.out.println(a/(double)b);//注意作用范围
    }
}
package Operator;

public class Demo02 {
    public static void main(String[] args) {
        long a=34786278582349365L;
        int b=123;
        short c=10;
        byte d=8;

        System.out.println(a+b+c+d);//long类型
        System.out.println(b+c+d);//int 类型
        System.out.println((String)(c+d));//int类型
        //如果有long类型,结果为long型,其他都为int类型

    }
}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-65afnKAq-1645616370177)(C:\Users\tangz\AppData\Roaming\Typora\typora-user-images\image-20220223171349691.png)]

关系运算符与取余

package Operator;

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3hldi5qy-1645616370178)(C:\Users\tangz\AppData\Roaming\Typora\typora-user-images\image-20220223171826912.png)]

自增自减

 public class Demo04 {
    public static void main(String[] args) {
        //++  --自增  自减  一元运算符
        int a=3;
        int b=a++;
        //a++等于a=a+1这个++在赋值给b之后
        System.out.println(a);
        //a++等于a=a+1这个++在赋值给之后前
        int c=++a;
        System.out.println(a);
        System.out.println(b);
        System.out.println(c);

        //幂运算 2^3  2*2*2=8  幂运算一般使用工具类运算
        double pow=Math.pow(3,3);
        System.out.println(pow);
    }

}

逻辑运算符

public class Demo05 {
    public static void main(String[] args) {
        //  与(and)  或(or)  非(取反)
        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)));//取反

        //短路运算
       // System.out.println("a&&b:"+(a&&b));//发现b为假,就不看a了
        int c=5;
        //实验验证,如果继续运算,则c为6,短路运算则为5
        boolean d=(c<4)&&(c++<4);
        System.out.println(c);
    }
}

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

位运算

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 对应位都为0才为0
        A^B  0011 0001 相同取0,不同取1
        ~B   1111 0010 取反
        <<左移  相当于数字乘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);
    }
}

扩展赋值运算符与三位运算符

public class Demo07 {
    public static void main(String[] args) {
        int a=10;
        int b=20;
        a+=b;//a=a+b
        a-=b;//a=a-b
        System.out.println(a);

        //字符串连接符
        //如果加减里面string类型,转化为字符串连接,但需在前面,放后面相当于继续输出什么
        System.out.println(a+b);
        System.out.println(""+a+b);
        System.out.println(a+b+"sa");

        //三元运算符
        //x?y:z
        //如果x为真,结果为y,否则结果为z
        int score=80;
        String tyre=score<60?"不及格":"及格";
    }
}

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

包机制

包的本质就是一个文件夹

包语句的语法格式为 package pkg1[.pkg2.[.pkg3……]]

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

为了能够使用某一个包的成员,我们需要在java程序中导入该包,使用"import"语句即可

import+包名

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

JavaDoc

javadoc命令是用来生成自己文档API的

参数信息

@author作者名

@version版本号

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

@param参数名

@return 返回值情况

@throws异常抛出情况

标签:String,int,基础,System,内容,println,JavaSE,public,out
来源: https://blog.csdn.net/qq_62931605/article/details/123097553

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有