java学习笔记--语法

Java语法

1. 程序

为了让计算机执行某些 操作或解决某个 问题 而编写的一系列有序指令的集合

2. Java的技术平台

javaSE:开发桌面应用程序
JavaME:开发移动设备端的程序(Android取代)
javaEE:开发企业级的web程序

3.Java的特点

  1. 纯面向对象
  2. 简单
  3. 安全性
  4. 多线程
  5. 跨平台性(一次编写。到处运行,通过JVM实现)
  6. 健壮性
  7. 分布式

4.Java运行机制

特点:跨平台(JVM:Java虚拟机)

**JDK:	Java开发工具包,里面包含jre和开发工具
JRE:Java运行环境,里面包含jvm和类库
JVM:Java虚拟机

也即
JDK=JRE+开发工具
JRE=JVM+类库**

5.Java开发时的细节问题

a.源文件注意事项

  1. 一个源文件可以有多个类存在,切记:运行时选择对应的类名
  2. 1的基础上源文件里用public修饰的类必须和当前文件名一致! 如果该类没有public修饰,则可以不用和当前文件名一致
  3. 一个源文件中至多出现一个public修饰的类

b.语法注意事项

  1. 严格区分大小写
  2. 每一条命令以分号结尾 ;} 结尾
  3. 括号成对出现 { }
  4. 所有的符号都是英文状态的
  5. 最好有缩进

c.Java转义字符

  • \t:一个制表位,默认四个空格,一般用于对齐数据
  • \n:换行符 (较常用,输出时),
  • \ :一个反斜杠
  • ":一个双引号 (String类型直接赋值时使用,等)
  • :一个单引号 (char类型赋值时使用)
  • \r:光标定位到当前行

6.java语法:变量

a.变量的理解

定义:内存中的一块数据存储空间

b.变量的三要素

  • 数据类型

  • 变量名

  • 变量值

例子: int x =12;

c.变量的使用步骤

  1. 声明/定义变量
    理解:相当于告诉计算机要开个空间

语法:

数据类型   变量名;
int         x
  1. 变量的赋值
    理解:将值存储到变量中

语法:

变量名 = 值 ;
x      =13;
  1. 变量的使用
    理解:将存到变量中的值拿出来去使用(打印、运算等
//控制台打印输出
System.out.println(变量名)

d.变量的特点

1. 变量保存在内存中,遵循内存的易失性的特点
3. 变量在 同一个类型 范围内,值可以变化
4. 变量必须先声明、赋值,然后再使用
5. 同一个作用范围内,不可以定义同名的变量

e.变量的命名规则

规则:
只能包含数字字母下划线和$符号。不能以数字开头、关键字、保留字

注: 标识符:即自己起名的地方都可以叫标识符,(类、方法、变量)

规范:

  • 类命名:每个英文首字母大写
  • 变量命名:第二个英文字母大写

7.Java的数据类型

a .分类

  1. 基本数据类型
    整型 : int
    浮点型 : float double
    字符型 : char
    布尔型:boolean
  2. 引用数据类型
    使用class(类)定义:String StringBuilder
    使用interface(接口)定义:List
    数组类型
注:字符型

特点

  1. 底层存储时以二进制形式(整数形式)
  2. char类型的常量值可以是:
    • 字符 char c =‘d’;
    • 整型 char c2 =100;
    • 十六进制的码值 char c3=\u000123 ;

b.数据类型

整型int :1212
字符型 char :只包含一个字符 注:(char c=‘ ’ 是错误的),用单引号
浮点型 double:3.1415926
字符串类型 String: 注:(string c=“” 正确),用双引号

+的作用
1、加法运算

当两个操作符都是数值型时,充当加法运算的作用

2、连接符

至少一个操作数为字符串型时,充当连接符的作用

c.类型转换 强制类型转换:转换的过程强制发生

规则:

大 --> 小

语法:

类型 变量名=(类型)值;

特点:

1、遵循自动提升原则,表达式的结果类型 遵循操作数中最大的类型
2、强制符号只针对于最近的操作数有效,往往需要通过小括号提升优先级

d.String类型和基本类型的转换

  1. 基本 --> String
    方式:通过拼接一个空字符串
    示例:String s=i+"";

  2. String - -> 基本
    (char除外)
    方式:通过调用基本类型的包装类的parseXX方法
    示例:

int i=Integer.parseInt(String);
  1. String --> char类型
    方式:通过调用String类型的charAt(索引)方法,索引:位置号,从0开始
    示例:char c=str.charAt(1);

8.算数运算符

  1. %求余:
    计算公式:a%b 相当于a-(int)a/bb
    例子:
    10%(-3)即 10 - 10/(-3)(-3) = 10-(-3)(-3)=1
    (-10.54)%3:即 (-10.54) -(-10)/3
    3 = - 1.54

2、++ 、–
++在变量前面 :y=x++,先赋值 x 再加一

public static void main(String[] args) {
        int i=5;
        int j=i++;
        System.out.println("j的值:"+j);
        System.out.println("i的值:"+i);
    }

在这里插入图片描述
++在变量后面 :y=++x, x 先加一再赋值给y

public static void main(String[] args) {
        int i=5;
        int j=++i;
        System.out.println("j的值:"+j);
        System.out.println("i的值:"+i);
    }

在这里插入图片描述

9.逻辑运算符

&&:短路与 条件1为false,则条件2不会判断,效率高

**||:**短路或 条件1为true,则条件2不会判断,效率高

&:逻辑与:条件1和条件2都要满足true,才为true

|:逻辑或:条件1和条件2只要有满足true,即为true

10.三元运算符

a? b : c
解析:a为true,则输出b,反之输出c

键盘输入语句 Scanner类

步骤: 
1、import java.util.Scanner;//导包

2、Scanner input =new Scanner(System.in); //创建对象

3、String name=input.nextLine();//输入字符串
	===>input.nextInt();//输入整型
	===>input.nextDouble();//输入浮点型
	===>input.next().charAt(0);//输入字符型

11.流程控制结构 顺序结构

分支结构

if判断结构
if(  ){

	}else
		{
	
			}
switch-case 结构
switch(num){
    case value :
       //语句
       break; //可选
    case value :
       //语句
       break; //可选
    //你可以有任意数量的case语句
    default : //可选
       //语句
}

注:
num变量可以是int、char、short、byte 、枚举
1、判断的变量或表达式的类型只能是int以及能自动转换为int的byte、short、char、枚举、String
2、dufault语法上可以省略,也可以放在case前面。但可能影响效果

java工具类Math

1、次方 : Math.pow(变量,次方数)
开方 : Math.sqrt(b)

public static void main(String[] args) {
        double i=2;
        int j=9;
        System.out.println("i的3次方"+Math.pow(i,3));
        System.out.println("开方:"+Math.sqrt(j));
    }

在这里插入图片描述


1、== 可以用于比较两个基本类型或引用类型
① 如果比较基本类型,判断的是值(内容)是否相等
② 如果比较
引用类型
,判断的是地址是否相等 ----》比较引用类型的值

引用类型变量.equals(另一个引用类型变量);

2 .打印随机数 :0~1的随机数 【0,1)
Math.random
使用公式:
a~b之间的整数【a,b】
(int)(Math.random()*(b-a+1)+a)

	//若【10~99)
  double n=Math.random*90;
	//[10~100) 10~ 99.xxx
  int n2=(int)(Math.random*90+10);	
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值