Java基础——Java基础语法和使用

小策:再长的路,一步步也能走完,再短的路,不迈开双脚也无法到达。

安装好Eclipse,之后便是漫长的Java语言学习之路,坚持住。
首先让我们了解一下Java语言的基础语法

标识符

自我们出生,父母便会给我们取名字
同样的,编写Java语言也是一种创造
所以Java中也有取名字这一行为,即命名

命名,简单来说就是给Java类、对象、方法等取名
Java标识符,也就是Java语言中的变量、常量、函数、语句块的名字,

标识符组成

  • 由数字、字母、下划线、美元符号组成
  • 必须以字母、下划线、美元符号开头
  • 区分大小写、不规定长度
  • 不能是Java关键字保留字

标识符约定

  • 类和接口

    • 每个单词首字母大写
  • 方法名

    • 开头首字母小写,其余单词首字母大写
  • 常量名

    • 全部大写,单词之间下划线隔开
  • 变量名

    • 首字符小写,大小混写。不用下划线、美元符号。

    判断

    标识符 判断 原因
    int 不能是关键字
    userName
    996ICU 不可以数字开头
    String 不能是关键字
    StudentOrder
    IP_HOST
    const 不能是保留字
    #123 ‘#’不属于标识符的组成

数据类型

我们出生后,便有性别、性格之分
同样的,Java语言也有数据类型之分

数据类型 是程序设计语言描述事物、对象的方法。

Java数据类型:

  • 基本类型

    • 整数类型
      • byte
      • short
      • int
      • long
    • 浮点类型
      • double
      • float
    • 字符类型
      • char
    • 布尔类型
      • boolean
  • 引用类型

整数类型

用于表示没有小数部分的数值,可以为负数

类型 存储需求 取值范围
byte 1字节 -128~127
short 2字节 -215 ~ 215-1
int 4字节 -231 ~ 231-1
long 8字节 -263 ~ 263-1

浮点类型

表示有小数部分的数值。

类型 存储需求 取值范围
float 4字节
double 8字节

字符类型

表示单个字符

  • 2字节
  • 采用unicode编码,字符储存范围在 \u0000 ~ \uFFFF
  • 编码中的第一个字节与ASCII兼容

布尔类型

用来判定逻辑条件

判定
true
false

变量

变量是在程序运行过程中其值可以被改变的量

变量的声明

数据类型 变量名[变量a,变量b,变量c...];

//声明三个数据类型为int整形的变量
//年龄age,长度len、尺寸size
int age,len,size;

变量的初始化

声明一个变量时,通过赋值语句=对变量进行初始化

//声明变量
double price;
//赋值
price = 100.0;

//声明并初始化
double salary = 100.0;

常量

在程序运行过程中,值始终不变的量

常量的定义

使用关键字 final 定义常量
final 数据类型 常量名称 = 值;

//定义一个数据类型为int,值为9的常量
final int TIME = 9;

注意:常量被赋值后,不可改变

final int a = 1;
a = 3;

运算符

运算符 使用
算数运算符 + - * / %
自增运算符 ++
自减运算符 --
关系运算符 > >= == <= < !=
逻辑运算符 `&&
三元运算符 ?:
赋值运算符 = += -= *= %=
位运算符 `&
字符串连接运算符 +
instanceof比较 instanceof

表达式

符合一定语法规则的运算符操作数的序列

  • a
  • a+10
  • a+b*c/3
  • 10>3?"LEFT":"RIGHT";

表达式的值

操作数进行运算得到的结果

表达式的类型

表达式值的数据类型

类型转换

基本数据类型之间可以进行相互转换。

隐式转换

进行类型加宽转换时可以自动实现

int n = 5;//4字节
double f = n;//8字节

强制转换

进行类型收缩转换时转换必须进行显式转换

double d = 3.14;//8字节
int i = (int)d;  //4字节
其他
  • byte,short, char之间不会相互转换,他们三者在计算时首先转换为 int 类型
  • 更多内容测试可以参考demo[1]

三大流程

顺序流程

让程序按照我写的代码顺序一步步执行
让代码变成我的乖宝宝

最基本的控制流程
按照语句顺序依次执行

int a = 1;
int b = 2;
int c;
c = a + b;
System.out.print("a+b="c);

a+b=3

分支流程

当我想在阴天吃火锅,晴天吃雪糕的时候,我得进行判断
于是有了分支流程

部分程序可根据表达式的值,有选择的执行

if else

if else 会进行表达式值的判断

  • true 执行true包裹的{代码},执行if外的语句
  • false 执行之后的if判断 || 执行if外的语句
if(true){
      //执行的代码
}else if(false){
      //不执行的代码
}else{
      //如果判断到这,执行
      //判断不到,不执行
}

switch case

多分支条件语句,可以和嵌套的if语句相互转换
但是switch语句更直观

switch语句比较特殊,分俩种情况

  • 加break;
    switch(表达式/变量标识符){
           case 常量1:
                 //代码块1
                 break;
           case 常量2:
                 //代码块2
                 break;
           default:
                 //代码块3
                 break;
    }
    
    • 当switch内容和常量1相同时,只执行代码块1
    • 当switch内容和常量1不相同,但和常量2相同时,只执行代码块2
    • 当switch内容和常量1、2都不相同时,执行代码块3
  • 不加break;
    switch(表达式/变量标识符){
           case 常量1:
                 //代码块1
           case 常量2:
                 //代码块2
           default:
                 //代码块3
    }
    
    • 当switch内容和常量1相同时,执行代码块1、2、3
    • 当switch内容和常量1不相同,但和常量2相同时,执行代码块2、3
    • 当switch内容和常量1、2都不相同时,执行代码块3

循环流程

当我想重复做某件事情,但是次数有我自己的要求时
我可以用循环语句来做

根据条件,反复执行语句、操作。

完整的循环语句包括四部分

  • 初始化部分:设置循环初始条件
  • 迭代部分:更新循环控制条件
  • 终止部分:退出循环的条件判断
  • 循环体部分:循环执行的代码块

同时可以添加break进行循环的强行终止。V

for循环

非常普通的一个完整的循环语句
迭代部分可以根据自己的需求进行设计,会产生别样的用处

//for(初始化部分;终止部分;迭代部分){
//循环体部分;
//}
for(int i = 0;i < 10;i++){
      System.out.print(i);
}

0123456789

while循环

while循环将初始化部分放在循环体外
先判断后执行

//while(循环条件表达式){
//循环体
//}
int a = 10;
while(a>0){
      System.out.print(a+" ");
      a--;
}

10 9 8 7 6 5 4 3 2 1

do while循环

和while有着异曲同工之妙
先执行后判断

//do{
//循环体
//}while(循环条件表达式);
int i = 0;
do{
      System.out.print(i++);
}while(i<10);

0123456789

增强型for循环

增强型for循环适用于比较复杂的数据类型组合
可以遍历指定数组集合的值

//for(类型 变量名:数组/集合){
//循环体
//}
int[] a = new int[]{1,2,3};
for(int indexA:a){
      System.out.println(indexA);
}
1
2
3

输入与输出

Java的输入、输出和C语言都是通过流来实现的。

输入设备System.in

Java中的输入需要使用Scanner的对象读取来自System.in的输入
使用时须在源文件的第一行导入:import java.util.Scanner

Scanner s = new Scanner(System.in);
int i = s.nextInt();
System.out.print(i);

//您输入的数

Scanner的方法总结:

返回值 方法
String nextLine()
boolean nextBoolean()
short nextShort()
int nextInt()
long nextLong()
double nextDouble()

输出设备System.out

java的输出不用借助其他类或对象
可以直接通过System.out进行输出。

总结:

输出 控制台显示
System.out.print(); 输出内容,不换行
System.out.println(); 输出内容,换行
System.out.printf(); 输出内容,不换行,必须得写明输出类型

博客相关java项目:查看Github项目
对应github项目:Demo2
导入项目的方法: Java基础——Java如何导入本地项目


  1. https://i.cnblogs.com/posts/edit;postId=13310610 ↩︎

posted @ 2020-07-20 01:26  不爱学习的小策  阅读(265)  评论(1编辑  收藏  举报