Java教程

2021.9.15Java基础

本文主要是介绍2021.9.15Java基础,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

2021.9.15

三大开发工具

JDK(包含jre和jvm,还有自己工具java和javac等等)

JRE(运行时环境,包含虚拟机,和一些简单的函数、库、文件等等)

JVM(java虚拟机,模拟了一个小巧的cup运行java)

HelloWold

1.新建文件夹,存放代码

2.新建一个Java文件

3.编写代码

public class Hello{
    public static void main(String[] args){
        System.out.println("Hello,World!");
    }
}

4.编译文件javac java文件(在文件所在目录下编译)

5.运行class文件,java 文件名

 

Java运行机制

编译型:负责翻译程序,将高级语言变成机器语言

解释型:边写边翻译

IDEA入门

psvm快速打出public static void main(String[] args){ }

sout快速打出System.out.println();

注释

//这是一个注释(单行注释)

/* 这是一个注释*/(多行注释)

//JavaDos:文档注释

/**

*@Description

*/

标识符

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

标识符只能以字母,$,下划线_开头

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

标识符是大小写敏感的

编写代码最好使用英文

 

数据类型

强类型语言:要求变量十分规范,所有变量必须定义再使用(安全性高,但是速度慢)

基本类型
  1. 整数

  2. 浮点数(小数)float4个字节,double占8个

  3. 字符类型char占2个字节

    Boolean类型占一位

    public class demo02 {
        public static void main(String[] args) {
            //八大基本数据类型
            //整数
            int num1 = 102222;  //最常用
            byte num2 = 20;
            short num3 = 30;
            long num4 = 30L; //Long类型要在后面加一个L
    ​
            //小数:浮点数
            float num5 = 50.1F;//Float类型要在数字后面加个F
            double num6 =3.14159265358;
    ​
            //字符型
            char name0 = 'a';
            //字符串,String不是关键字,类
            String name1 = "龙玉芹";
    ​
            //布尔值
            boolean flag1 = true;
            boolean flag2 = false;
        }
    }
    public class demo03 {
        public static void main(String[] args) {
            //整数拓展:     进制   二进制0b     十进制     八进制0     十六进制0x
            //
            int i = 10;
            int i2 = 010;    //八进制
            int i3 = 0x10;    //十六进制0x  0~9 A~F 16
    ​
            System.out.println(i);
            System.out.println(i2);
            System.out.println(i3);
            System.out.println("-----------------------------------------------------");
            //--------------------------------------------------------------------------
            //浮点数拓展
            //float     有限    离散     含有误差   大约    接近但不等于
            //double
            //最好完全避免使用浮点数进行比较
            //最好完全避免使用浮点数进行比较
            //最好完全避免使用浮点数进行比较
    ​
            float f = 0.1f;
            double d = 1.0 / 10;
    ​
            System.out.println(f == d);
            System.out.println(f);
            System.out.println(d);
    ​
            float d1 = 232323234324324f;
            float d2 = d1 + 1;
            System.out.println(d1 == d2);
    ​
            //-----------------------------------------------
            //字符串扩展
            System.out.println("------------------------------------------------------");
            char c1 = 'a';
            char c2 = '中';
    ​
            System.out.println(c1);
            System.out.println((int) c1);//强制转换
    ​
            System.out.println(c2);
            System.out.println((int) c2);
    ​
            //所有的字符本质还是数字
            //编码    Unicode   2字节  65536   Excel
    ​
    ​
            //转义字符
            //  \t    制表符
            //  \n   换行
            System.out.println("HEllo\tWorld");
            System.out.println("Hello  \nWorld");
    ​
            //-----------------------------------------------------------------------
            //布尔值扩展
            boolean flag = true;
            if (flag == true) {}      //新手
            if (true) {}              //老手
            //两者一样,代码应该更为精简一些
        }
    }

     

引用类型

类,接口,数组

类型转换

由于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 b = i;
        //强制转换      (类型)变量名     高--低
        // 自动转换         低--高
    
        System.out.println(i);
        System.out.println(b);
​
        /*
        注意点:
        1. 不能对布尔值进行转换
        2.不能把对象类型转换为不相干的类型
        3.把高容量转到低容量时 ,强制转换
        4.转换时可能存在溢出,或者精度问题
         */
​
        System.out.println("----------------------");
        System.out.println((int)23.7);
        System.out.println((int)-45.89f);
        System.out.println("----------------------");
        char c = 'a';
        int d = c + 1;
        System.out.println(d);
        System.out.println((char) d);
​
    }
}
​

 

public class demo05 {
    public static void main(String[] args) {
        //操作比较大的数字,注意溢出问题
        //JDK7新特性,数字之间可以用下划线分割
        int money = 100_0000_000;
        int years = 20;
        int total1 = money * years;   //溢出
        long total2 = money * years;    //默认是int,转换之前已经存在问题
        long total3 = money * ((long)years);   //把其中一个数转换成long类型
        System.out.println(total3);
    }
}

 

 

 

 

 

 

 

 

 

 

 

 

 

这篇关于2021.9.15Java基础的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!