Java变成中的常见问题
1.扩展名出现问题
2.文件名和类名不匹配
3.单词书写错误
4.区分大小写(大小写敏感)
5.中英文符号
注释:程序中说明性的信息,不参与程序的运行
单行注释
格式://注释
多行注释
格式:/*
注释
*/
文档注释:类似于产品的说明书
格式:
/**
*注释
*/
关键字:被java赋予特定含义的单词
特点:
全部小写
在开发工具中有特殊的颜色标记
常量:程序运行过程中不能发生改变的值
分类
1.整数
2.小数
3.布尔:用于表示对错(只有两个值true/false)
4.字符:单引号包裹(只能包裹一个)
5.字符串:双引号包裹(没有具体的限制)
6.null:特殊的数据类型 通常表示空
数据类型
基本数据类型:
整型:byte short int long
浮点型:float double
字符:char
布尔:boolean
注意:整型默认为int 浮点型默认double
字符串是String 特殊的引用数据类型通常做基本数据类型使用
变量:在程序相运行过程中可以发生改变的值
定义格式:
数据类型 变量名;
定义定初始化格式:
数据类型 变量名=初始化值(常量);
变量的操作
取值和修改
取值:就直接使用变量名称
修改:重新给值
格式:变量名=值;
注意:
1.使用之前必须初始化
2.等号左右数据类型一致
3.变量不能重新定义
4.整型默认int和浮点型默认double的问题
标识符:程序中自定义的类名 变量名 方法名
组成:字母数字符号(_$)
java规则:
1.数字不可以开头。
2.不可以使用关键字。
3.区分大小写(大小写敏感)
业内规则
1.变量名称要有意义
2.变量名称为一个单词,全部小写。多个单词第一个单词首字母小写
3.类名为一个单词,首字母大写。多个单词全部首字母小写
类型转换:Java中不同的数据类型进行相互转换
分类:
自动类型转换(也叫隐式类型转换)
把一个范围小的数据类型或变量赋值给一个范围大的数据类型或变量
例如:double d=10;
强制类型转换(也叫显式类型转换)
把一个范围大的数据类型或变量赋值给一个范围小的数据类型或变量
例如:int i=(int)10.5;
注意:强制类型转换会造成精度丢失
运算符:对常量或变量进行处理的符号
表达式:把常量,变量,运算符连接起来符合java语法的式子,根据运算符的不同叫做不同的表达式
算数运算符:
+ - * / % ++ --
注意:
1.+-可以做正负使用
2.包含自动类型提升
3.++分类在前(先加后用),在后(先用后加)
4.+可以做拼接使用,+两边出现string(字符串)当前+做拼接使用
5.先乘除后加加减,有括号算括号
赋值运算符:= += -= *= /= %=
例子:
int i=10;
i+=5;等同于i=i+5
注意:自动包含一个类型转换
比较运算符:
> < == <= >= ...
注意:string可以使用==,也可以使用.equals()
使用==判断string是否相等会出问题,使用.equals()不会出问题
判断大小只能是数值,string只能判断是都相等
逻辑运算符: &and与,|or或,!not非,&&(短路),||(短路)
&:两边都成立才成立
|:两边都不成立才不成立
!:反转结果
区别:
一个逻辑符:无论什么情况表达式都会执行
两个逻辑符:特殊情况下不需要执行后面的表达式
&&:第一个表达式结果为false
||:第一个表达式结果为true
注意:
使用直接选择两个逻辑符,两个逻辑符可以减少资源消耗
三元表达式:
格式:
(表达式0)?表达式1:表达式2;
执行流程:
表达式0的结果只能是boolean,如果为true执行表达式1,如果为false执行表达式2
注意:
表达式的处理方式:
1.直接输出
2.变量接受(对结果再次处理)
键盘录入://与C语言中的scanf类似的作用
1.导包
import java.util.Scanner;
这行代码必须出现在类定义之外并之上
2.创建对象
Scanner sc=new Scanner(System.in);
只有sc是变量名称可以发生改变,别的不允许改变
3.接收数据
int a =sc.nextInt();#只能接受int,sc是第二步中的变量名。
//第二种接收数据的方式
String a =sc.next();#只能接受String
只有变量名a可以发生改变,别的不允许改变