今天我们主要学习Java语言的基础知识:其中包括常量,数据类型,变量,标识符,类型转换等。通过这些学习,可以对Java语言进行初步了解,后续会对Java语言进行更深一步的讲述。
目录
常量
概述:在程序运行中,其值不可以发生改变的量。
分类
- 字符串常量:用双引号括起来的内容。"Hello World"
- 整数常量:不带小数的数字。666
- 小数常量:带小数的数字。13.12
- 字符常量:用单括号括起来的内容。'A','我'
- 布尔常量:布尔值,表示真假。true,false
- 空常量:一个特殊的值,空值。null
代码示例:
public class Demo01 {
public static void main(String[] args) {
//字符串常量
System.out.println("Hello World!");
System.out.println("----------");
//整数常量
System.out.println(666);
System.out.println(-88);
System.out.println("----------");
//小数常量
System.out.println(13.12);
System.out.println("----------");
//字符常量
System.out.println('A');
System.out.println("----------");
//布尔常量
System.out.println(true);
System.out.println("----------");
//空常量
//空常量不能直接输出
//System.out.println(null);
}
}
数据类型
Java语言是强类型语言,对于每一种数据都给出了明确的数据类型,不同的数据类型也分配了不同
的内存空间,所以它们表示的数据大小也是不一样的。
变量
概述:在程序运行中,其实可以发生改变的量。 从本质上来讲,变量是内存中的一小块区域。
定义
int a = 10;
注意事项
- 名字不能重复。
- 变量未赋值,不能使用。
- long类型的变量定义的时候,为了防止整数过大,后面要加L。
- float类型的变量定义的时候,为了防止类型不兼容,后面要加F。
代码示例:
public class Demo02 {
public static void main(String[] args) {
//2的10次方
System.out.println(2E+10);
//2的负10次方
System.out.println(2E-10);
//定义变量
int a = 10;
//输出变量
System.out.println(a);
//修改变量
a = 20;
System.out.println(a);
//定义byte类型的变量
byte b = 10;
System.out.println(b);
//定义short类型变量
short c = 100;
System.out.println(c);
//定义double类型变量
double d = 10.14;
System.out.println(d);
//定义char类型变量
char e = 'q';
System.out.println(e);
//定义boolean类型变量
boolean f = true;
System.out.println(f);
//定义long类型变量
long g = 10000000L;
System.out.println(g);
//定义float类型变量
float h = 13.23F;
System.out.println(h);
}
}
标识符
定义规则
- 由数字,字母,下划线_和美元符$组成。
- 不能以数字开头。
- 不能是关键字
- 区分大小写。
常见命名约定分为两种:一种为小驼峰命名法,另一种为大驼峰命名法。
小驼峰命名法:方法,变量
- 标识符是一个单词的时候,首字母小写。name
- 标识符由多个单词组成的时候,第一个单词首字母小写,其他单词首字母大写。firstName
大驼峰命名法:类
- 标识符是一个单词的时候,首字母大写。Name
- 标识符由多个单词组成的时候,每个单词首字母大写。FirstName
类型转换
自动类型转换
double a = 10;
System.out.println(a);
//定义byte类型的变量
byte b = 10;
short c = b;
int d = b;
System.out.println(c);
System.out.println(d);
//这是不可以的,类型不兼容
// char e = b;
强制类型转换
int k = (int)12.22;
System.out.println(k);
字符的"+"操作
- 字符'A'的值为65 'A'->'Z'的值是连续的
- 字符'a'的值为97 'a'->'z'的值是连续的
- 字符'0'的值为48 '0'->'9'的值是连续的
算术表达式中包含多个基本数据类型的值的时候,整个算术表达式的类型会自动提升。
规则:
- byte类型,short类型和char类型将被提升到int类型
- 整个表达式的类型自动提升到表达式中最高等级操作数同样的类型
等级顺序:byte,short,char->int->long->float->double
数据输入
- 导包: import java.util.Scanner;
- 创建对象: Scanner sc = new Scanner(System.in);
- 接收数据: int x = sc.nextInt();
import java.util.Scanner;
public class Demo06 {
public static void main(String[] args) {
//创建对象
Scanner sc = new Scanner(System.in);
int x = sc.nextInt();
System.out.println("x=" + x);
}
}
算数运算符
public class Demo04 {
public static void main(String[] args) {
int a = 10;
int b = 6;
System.out.println(a + b);
System.out.println(a - b);
System.out.println(a / b);
System.out.println(a % b);
//除法得到的是商,取余得到的是余数。
//整数相除只能得到整数,要想得到小数,必须有浮点数参与。
System.out.println(6.0 / 4);
}
}