常量
概念
在程序运行期间,固定不变的量
使用了final关键字修饰
常量的分类
- 字符串常量:凡是用双引号引起来的部分,叫做字符串常量。例如:“abc”、“hello”、“123”
- 整数常量:直接写上的数字,没有小数点,例如:100、0、-250
- 浮点数常量:直接写上的数字,有小数点。例如:2.5、-2.14、0.0
- 字符常量:凡是用单引号引起来的单个字符,就做字符常量。例如:‘a’、‘B’、‘中’、‘0’
- 布尔常量:只有量中取值。true、false
- 空常量:null。代表没有任何数据
优点:
比较安全:
推荐做法:
1. 常量名通常大写
2. 不同字符使用下划线分隔
3. 只能被赋值一次,通常定义时即对其初始化
Scanner
在程序运行中,接收用户键盘输入的值
使用
第一步:导入Scanner类
import java.util;
第二步:创建Scanner对象
Scanner input = new Scanner(System.in);
第三步:获得键盘输入的数据
int now = input.nextInt();
Scanner的常用方法
方法 | 说明 |
String next() | 获得一个字符串 |
int nextInt() | 获得一个整形数值 |
double nextDouble() | 获得一个双精度类型数值 |
boolean hasNext() | 判断是否有输入数据,如果有输入数据,则返回true,否则返回false |
String简单使用
1、String不是基本数据类型,属于引用数据类型
2、使用方式与基本数据类型一致
String s = "abcdef";
//一个字符串可以跟另外一个字符串连接,也可以直接连接其他类型的数据
s = s + "bbb";
System.out.println(s); //abcdefbbb
int a = 100;
s = s + n;
System.out.println(s); //abcdefbbb100
String s1 = 1; //错误
String s2 = 1.2f + ""; //正确
System.out.println(s2); //打印1.2
System.out.println(1 + 2 + “abc”); //3abc
System.out.println(“abc” + 1 + 2); //abc12
System.out.println(‘a’ + 1 + "abc"); //98abc
System.out.println("abc" + ‘a’ + 1); //abca1
数据类型转换
Java程序中要求参与的计算的数据,必须要保证数据类型的一致性,如果数据类型不一致将发生类型的转换
- 自动转换
- 强制转换
自动转换
范围小的类型向范围大的类型提升,byte、short、char 运算时直接提升为int
byte、short、char–>int–>long–>float–>double
long num = 1000;
强制转换
数据范围大的赋值数据范围小的无法完成自动转换,这时就需要强制类型转换
int i = (int)10L;
类型转换注意事项
- 强制类型转换一般不推荐使用,因为有可能发生精度损失、数据溢出
- byte/short/char这三种类型都可以发生数学运算,例如加法"+"
- byte/short/char这三种类型在运算的时候,都会被首先提升成为int类型,然后再计算
- boolean类型不能发生数据类型转换