Java基础部分(1)

本文介绍了Java语言的简史,包括其发展过程和关键里程碑。讲解了开发环境设置,特别是JDK和JVM的作用。接着阐述了编写第一个Java程序的步骤,Java的执行流程。详细讨论了Java数据类型,包括基本数据类型如int、double、char,以及引用数据类型。此外,还介绍了变量的概念和运算符的使用,包括算术、比较和逻辑运算符。
摘要由CSDN通过智能技术生成

目录

 

简史

开发环境

第一个Java程序

Java执行流程

Java数据类型

变量:

运算符


简史

目的:微服务开发

历史:

1991: sun公司—>詹姆士高斯林(开发语言OAK语言)

1994:爪哇语言—>Java语言

2009: Oracle收购sun OracleSun

开发工具:

JDK: Java应用程序工具——>Java程序的运行平台

1. JVM (Java虚拟机)——使Java语言能实现跨平台操作

2. API(Java应用程序接口),Java语言工具。

编辑工具:记事本,Eclipse、MyEclipse、STS、IDEA

 

开发环境

打开安装目录:C:\Program Files\Java\jdk1.8.0_271\bin

JDK1.6之后

环境变量—新建C:\Program Files\Java\jdk1.8.0_271\bin

第一个Java程序

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

Java执行流程

Java数据类型

概念:信息(计算机中所有存在的内容都称为信息)的归类。

存储方式:信息在计算机中首次出现存储的位置在内存中,再通过程序将内存(实现临时存储)中的信息写入到磁盘(永久存储)中进行存储。

分类:

  • 基本数据类型(原始数据类型)

    1. int 整数类型 占4字节 32位 范围-2^31---2^31-1<!--0为第一个数-->

    2. long 长整数类型 8字节 64位 范围-2^63---2^63-<!--在使用整数类型的时候如果数值范围没有超出int的最大范围的话可以不用添加l单位,否者需要添加:132423153463244l-->

    3. short 过时喽~~~

    4. double 双精度浮点类型 8字节 64位<!--所有的数都可以为double;所有小数后位数在1位以上的包含一位的都是双精度-->

    5. float 单精度浮点类型 4字节 32<!--所有小数点后只有一位的并且包含f单位的数都是单精度-->1.1f

    6. char 字符类型 2字节 16位<!--所有字母(a、b)、符号(!、_、$)、中文字(李、张)都属于字符,所有字符都会以单引号进行包含-->

      =====================================================================

    7. boolean 布尔类型 1字节 8 所存储的数据只能是结果数据(true/false)。

      =====================================================================

    8. byte 字节类型 。

  • 引用数据类型

    在Java中所有单词首字母为大写的都使引用类型(自定义)

    String:字符串类型

    特征:在Java中所有带有双引号的数据都是字符串类型。

    内存结构图:

 

变量

作用:在Java程序中对指定数据类型进行存储的一种容器行为。在当前容器中可以改变存储的数据值,前提是相同的类型。

创建语法:

数据类型 变量名称=值;

 // main+alt+/
 public static void main(String[] args) {
     int a = 2021;
     //syso+alt+/
     System.out.println(a);
     long b=2021;
     System.out.println(b);
     long c=23534265246l;
     System.out.println(c);
     
     int x =1;
     int x1=2;
     long y = 2;
     long y1=3;
     
     y = x;//在程序中,小类型数据是可以存放在大类型的容器中--转型
     System.out.println(y);
     
     x1=(int)y1;//强制类型转换 只能从大到小
     System.out.println(x1);
     
     double db1=1.1;
     y1=(long)db1;
     System.out.println(y1);//大到大也需要强转。
     
     String str="abc";
     System.out.println(str);
     
     String str1="张 三";
     System.out.println(str1);
 }

运算符

  • 算数运算符:在程序中实现算数运算的操作。

    1. 一元运算符

      符号:++ (自增) --(自减)

      特征:

      • 运算符在变量之后出现的时候,计算规则是直接将当前的变量值进行获取,在执行完当前的指令后才会进行自增操作。

      • 运算符在变量之前出现的时候

         

         public static void main(String[] args) {
             //定义两个整形的变量
             int a = 1;
             int b = 2;
             a++;//++a 一元运算符如果出现在一条独立的指令中,运算符在前和后是没有区别。
             System.out.println(a);//2
             System.out.println(b++);//2  输出以后才会进行++的行为
             System.out.println(b);//3
             System.out.println(++b);//4  ++后进行输出
             int x = 1, y = 2;
             y = x++;
             x = ++y;
             System.out.println("x="+x+"y="+y);//x=2y=2
             
             //重点
             int i = 1,j =2;
             i = i++;//当他不存在~~~ java中在自增操作中,自己给自己赋值属于无效操作。(自己是无法给自己赋值的)
             j = i++;
             System.out.println("i="+i+"j="+j);//i=2j=1
             i = ++i;//该语句会执行,先自增变为2,再赋值回去
             System.out.println("i= "+i);//3
         }
    2. 二元运算符

      符号: + - * / %

    3. 三元运算符

      String  str = "张三";
      String input = str=="刘德华"?"真的帅"!"丑的要死";
      //输出input 丑的要死
  • 赋值运算符

    符号: += -= *= /= %= =(赋值)

    例如:

     int a  = 1;
     a +=3  //4  相当于a = a + 3

=========================================================================

  • 比较运算符

    符号: > < >= <= ==(等于) !=(不等于)

    比较运算符对表达式进行操作后得到的是一个结果(true/false)数据。

==和equals的区别

注意:等号在对引用数据进行比较时,执行的是两者的堆地址的引用是否相同 看下面的例子

     String s1 = "沐泽"; 
     String s2 = "沐泽";//s1和s2都在常量池里面
     String s3 = scanner.next();//输入"沐泽"实际上.next在堆里面,所以s3是引用堆里面的数据
     System.out.println(s1==s2);//true
     System.out.println(s1==s3);//false!!!!!!!!!!!!!

所以在对引用数据进行内容比较的时候无法通过==进行比较,因为==比较的是引用是否相同

而在值内容比较的情况下可以使用equals进行内容比较

     System.out.println(s1.equals(s3));//true
 ​
     //在开发过过程中会将常量值作为初始比较值
     String s4 = null;
     //System.out.println(s4.equals(muze));
     System.out.println("muze".equals(s4));//在进行常量值比较的时候引用数据一定要在被比较中
  • 逻辑运算符

    逻辑运算符主要以短路逻辑运算符为主,而在c或一些基础的计算机语言中逻辑运算符符比较常见

    • 短路逻辑运算符:&&短路与 ||短路或 !逻辑非

      短路怎么理解?当前面的部分已经为false则得到整体为false,不会继续往后看。所以它的性能也比下面逻辑运算符好。

       int a = 1,b = 2;
       System.out.println(a++<1&&b++=2);
       //a = 2,b = 2
    • 逻辑运算符: &逻辑与 |逻辑或 !逻辑非

    计算机中逻辑运算符包含两种数据运算

    1. 结果数据:与,或,非:对结果进行取反(对布尔/结果数据进行操作)

    2. 值数据

      在计算机中逻辑值运算属于一种底层的计算机算法方式,采用进制形式(二进制)进行逻辑运算

      3 & 2 =? //2

      3 0011

      2 0010

      ----------&

      0010

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值