JavaSE最新版(一)基础语法

目录

一、常见的cmd命令  win+r:cmd

二、如何在任意路径和目录打开QQ软件?

三、安装jdk

四、第一个JAVA程序Hello World

1.打开记事本输入如下代码,并修改为.java后缀:

2.打开cmd执行如下命令就可看到效果

五、JDK与JRE

1.JDK是什么?有哪些内容组成?

2.JRE是什么?有哪些内容组成?

3.JDK,JRE,JVM三者的包含关系

六、注释

七、关键字

八、字面量

九、变量

1.定义

2.公交车案例

十、进制

十一、数据类型

1.定义

2.案例:输出老师信息

十二、表示符

1.定义

十三、键盘录入

1.使用步骤

2.练习:求两数之和

十四、使用Idea

1.创建项目步骤

2.快捷键

3.设置 file/settings...

十五、运算符

1.定义:

2.算术运算符:

3.案例,输入个数知道他的个十百得数

 十六、流程控制语句

1.顺序结构:从上往下执行

2.分支结构:if..else..if else    switch..case..breake..default  continue  break;

3.循环结构:for do...while  while

1.无限循环

练习:100以内逢个位7,十位7,倍数7跳过

十七、数组

1.定义

(1)静态初始化:

(2)获取元素  数组名[索引]    存储元素    数据名[索引] = 值

(3)数组得遍历  for(int i = 0 ; i

(4)动态初始化  String[] arr = new String[数组的长度]

(5)数组默认初始化值 整数:0  小数 0.0  字符:空格  布尔:false  引用:null

(6)小心越界

(7)数组的内存图

十八、方法

1.定义

 2.方法的重载


一、常见的cmd命令  win+r:cmd

盘符切换  D:展示本目录的文件   dir进入文件 cd  code退到上一层文件  cd ..
进入多级目录 cd code\a退到盘符   cd  \清屏  cls退出  exit

二、如何在任意路径和目录打开QQ软件?

答:只要把QQ的路径记录在电脑的环境变量。步骤如下

  1.  打开我的电脑或者在桌面,右键属性
  2. 选择高级设置里面的高级
  3. 点击里面的环境变量
  4. 找到下面的系统变量里面的Path
  5. 新建把路径放里面就好

三、安装jdk

Java Downloads | Oracle   17版本,18版本有BUG,安装了不用配置环境变量,新版本默认了

四、第一个JAVA程序Hello World

1.打开记事本输入如下代码,并修改为.java后缀:

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

2.打开cmd执行如下命令就可看到效果

D:\javaSE最新代码\day01>javac HelloWorld.java  //得到.class文件

D:\javaSE最新代码\day01>java HelloWorld
Hello World

五、JDK与JRE

1.JDK是什么?有哪些内容组成?

JDK是Java开发工具包  * JVM虚拟机(java运行的地方)  *核心类库(第三方包)  *开发工具(javac,java)

2.JRE是什么?有哪些内容组成?

JRE是运行环境  JVM、核心类库、运行工具

3.JDK,JRE,JVM三者的包含关系

*JDK包含JRE    *JRE包含了JVM

六、注释

  • 单行注释    //
  • 多行注释   /*  */
  • 文档注释   /**   */

七、关键字

是JAVA赋予特定含义的字母

八、字面量

字面量类型说明举例
整数类型不带小数点的数666,88
小数类型带小数点的数13.14
字符串类型用双引号引起来的内容"HelloWord"
字符类型用单引号引起来,里面只能有一个字符,或是制表符'a' '我'  '\t'
布尔类型布尔值,表示真假只有两个值,true,false
空类型一个特殊的值,空值值是:null

1.制表符  '\t' (空格8倍)补齐前面8的倍数个字符,可以补齐一个或者8个字符

九、变量

1.定义

  1. 变量是用来定义一些不能确定的值
  2. 定义的格式:数据类型 变量名 = 数据值       int  a = 10;
  3. 不能重复定义相同的变量名的值    int a = 10;     int a = 20(错)
  4. 修改变量值   int a = 10;   a = 20
  5. 定义多个值  int a = 10 , b =11, c = 12;
  6. 建议赋值定义一起写,不要分开

2.公交车案例

1.一开始没有乘客。第一站:上一位,第二:站上两位,下一位,第三站:上两位,第四战:下一位,第五战:上一位

public static void main(String[] args) {
        int count = 0;
        count = count + 1;
        count = count + 2 - 1;
        count = count + 2;
        count = count - 1;
        count = count + 1;
        System.out.println(count);
    }

十、进制

二进制:0,1,满2进1,以0b或0B开头。
十进制:0-9,满10进1.
八进制:0-7,满8进1,以数字0开头.
十六进制:0-9及A-F,满16进1。以0x或0X开头表示。此处A-F不区分大小写
十进制              十六进制                 八进制                  二进制
   9                        9                            11                      1001
   12                       C                           14                      1100
二进制转十进制  1001===>   1*2*3+1 = 9     
正数三码合一都等于原码,负数需要计算(出题人会给补码)
1        0        0        0        1        1        1        0        -14的原码
1        1        1        1        0        0        0        1        -14的反码(原码除符号位都取反)
1        1        1        1        0        0        1        0        -14的补码(反码+1,(最后一位+1))
十进制转二进制
除二取余数再逆过来 13/2   1101
二进制 转 八进制   011   101   001  三个一位   3 5 1
二进制 转 十六进制 1110 1001   四个一位   E 9

十一、数据类型

1.定义

基本数据类型:整形:byte \ short \ int(常用) \ long 浮点型 float \ double(常用)  字符型 char  布尔型 boolean

引用数据类型:类 class  接口 interface  数组 array

1.声明long数据类型需要加 l 或 L                     long a = 12031L;

2.声明float数据类型需要加 f 或 F                     long b = 12031F;

3.char只能声明一个字符或转义字符                char a ="男"    a = "\n"

byte = 1字节   1字节 = 8bit位                    -128~127         1字符 = 2字节

自动类型提升:byte、char、short->int->long->float->double依次变大  容量小的与容量大的运算时,结果自动提示转换为大

byte、char、short这三个运算为int    byte+byte = int

强制类型转换:double  a = 100.0;        int b = (int) a  (1)可能会造成精度损失

2.案例:输出老师信息

public static void main(String[] args) {
        String name = "黑马谢广坤";
        int age = 18;
        char sex = '男';
        double hight = 180.1;
        boolean isSingle = true;
        System.out.println("老师姓名是:"+name+"年龄是"+age+"性别是"+sex+"身高是"+hight+"是否单身"+isSingle);  
    }

十二、表示符

1.定义

就是名字:由数字、字母、下划线(_)和美元($)组成。不能以数字开头。不能是关键字。区分大小写。

十三、键盘录入

1.使用步骤

  1. 导包   import java.util.Scanner;(一般开发工具idea和eclipse会自动录入)
  2. 创建对象  Scanner sc = new Scanner(System.in);
  3. int i = sc.nextInt()   只能输入整数

2.练习:求两数之和

强制转化 int a = (int) a+b

import java.util.Scanner;

public class HelloWorld {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a =  sc.nextInt();
        int b = sc.nextInt();
        System.out.println(a+b);
    }
}

十四、使用Idea

1.创建项目步骤

  1. 点击File下的Project Structure...
  2. 选择Module、java下finish取名就可

2.快捷键

psvm:创建主方法             sout:输出语句        ctrl+t:提示方法参数      ctrl+alt+m:抽取方法

3.设置 file/settings...

主题:Appearance:theme主题                 字体:Editor/Font/Size  Consolas程序员专用字体              注释:字体下:language default/comments

 配置自动导包 :Editor/General/Auto import       取消区分大小写 :Editor/General/code Completion/Match case

十五、运算符

1.定义:

对自变量操作的符号

2.算术运算符:

+ 正号 - 负号 +加 -减 *乘 /除 %取余 ++(自加)++(自减) +链接  +=(1+=1)*=  /=  有小数参与可能不精确
==  相等于  !=不等于    < 小于   >大于   >=大于等于      <=小于等于    instanceof
链接运算+    int  a = 100,  string b = "你好"   a+b
自动类型提升:byte、char、short->int->long->float->double依次变大  容量小的与容量大的运算时,结果自动提示转换为大
byte、char、short这三个运算为int    byte+byte = int
强制类型转换:double  a = 100.0;        int b = (int) a  (1)可能会造成精度损失
byte = 1字节   1字节 = 8bit位                    -128~127         1字符 = 2字节
&逻辑与        &&短路与        |逻辑或        ||短路或        !逻辑非       ^逻辑异或(相同为假,不同为真) 
a        b        a&b        a&&b        a|b        a||b        !a        a^b
true     false   false        false        true      true        false   true
<<左移   3<<2 =12==>3*2*2=12  规律左移几位就等于原来的数值乘2左移几次方幂
>>右移   3>>2=1==>3/2=1     规律右移几位就等于原来的数值除2右移几次方幂
>>>无符号右移    
&与运算    12:00001100    5:00000101 ===> 4:00000100  有0为0
|或运算      4:00000100     12:00001100   5:00000101   有1为1
^异或运算   13:00001101    12:00001100     5:00000101  ==>9:00001001 相同为0不同为1
~取反运算  取反

3.案例,输入个数知道他的个十百得数

 public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        System.out.println("百位是"+a/100%10+"十位是"+a/10%10+"个位是"+a%10);
    }

 十六、流程控制语句

1.顺序结构:从上往下执行

2.分支结构:if..else..if else    switch..case..breake..default  continue  break;

3.循环结构:for do...while  while

switch得几种写法
switch (1){
            case 1->{
                System.out.println("你好");
                break;
            }
        }
switch (1){
            case 2:{
                System.out.println("你好");
                break;
            }
        }
switch (1){
            case 2:
                System.out.println("你好");
        }

1.无限循环

for(;;){}         while(true)      do...while(true)

练习:100以内逢个位7,十位7,倍数7跳过

for(int i = 0 ; i < 100 ; i++){
            if (i % 10 == 7 || i / 10 % 10 ==7 || i % 7 == 0){
                System.out.println('过');
                continue;
            }
            System.out.println(i);
        }

十七、数组

1.定义

(1)静态初始化:

完整格式 静态初始化 数据类型 [] 数组名 = new 数组类型[]{元素1,元素2...};
简化格式 数据类型 [] 数组名 = {元素1,元素2...};

(2)获取元素  数组名[索引]    存储元素    数据名[索引] = 值

(3)数组得遍历  for(int i = 0 ; i <arr.length ; i++)

(4)动态初始化  String[] arr = new String[数组的长度]

(5)数组默认初始化值 整数:0  小数 0.0  字符:空格  布尔:false  引用:null

(6)小心越界

(7)数组的内存图

  • 栈:方法运行时使用的内存,比如main方法运行,进入方法栈中执行
  • 堆:new来创建的,都存在堆内存

十八、方法

1.定义

方法名字的书写规则首单词的字母小写,后面的单词首字母大写

public static 返回值类型  方法名 (参数){ 方法体 return } 

    public static void main(String[] args) {
        hello();
        sum(10,20);
        System.out.println(zero(10));
    }
    public static void hello() {
        System.out.println("你好");
    }
    public static void sum(int a,int b){
        System.out.println(a+b);
    }
    public static int zero(int r){
        return r*r;
    }

 2.方法的重载

简单记:同一个类中,方法名相同,参数不同的方法。与返回值无关

public static void main(String[] args) {
        sum(10,20);
        sum(10.1f,5);
    }
    public static void sum(int a,int b){
        System.out.println(a+b);
    }
    public static void sum(float a,int b){
        System.out.println(a+b);
    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值