变量与常量
变量
Java是一种强类型语言,每个变量都必须声明其类型。
Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。
type varName [=value]
//数据类型 变量名 = 值;
变量作用域
- 类变量(static)
- 实例变量
- 局部变量
public class code2 {
//类变量 static
static double work=1000;
//实例变量(从属于对象,如果不进行初始化,输出此类型默认值)
String name;
int age;
public static void main(String[] args) {
//局部变量(必须声明和初始化)
int i=10;
System.out.println(i);
code2 code = new code2();
System.out.println(code.name);
System.out.println(code.age);
//类变量 static
System.out.println(work);
}
}
运行结果如下:
注:实例变量如果不进行初始化,则输出该类型的默认值(0、0.0、u0000);布尔值默认值为false;除了基本类型,其他类型默认值都是null。
常量
常量(Constant):初始化之后不能再改变值。
所谓常量可以理解为一种特殊的变量,它的值设定后,在程序运行过程不允许被改变。
final 常量名 = 值;
//常量名一般使用大写字符
变量的命名规范
(1)所有变量、方法、类名:见名知意
(2)类变量:大写字母和下划线
(3)驼峰原则:除第一个单词外,后面的单词首字母大写
Scanner
- 可以通过Scanner类来获取用户的输入。
Scanner s = new Scanner(System.in);
- 通过Scanner类的next()与nextLine()方法获取输入的字符串,读取前我们一般要使用hasNext()与hasNextLine()判断是否还有输入的数据。
(1)next()与nextLine()
import java.util.Scanner;
public class code0 {
public static void main(String[] args) {
//创建一个扫描器对象,用于接收键盘数据
Scanner scanner = new Scanner(System.in);
System.out.println("使用next()方法接收:");
//判断用户有无输入字符串
if(scanner.hasNext()){
String str = scanner.next();
System.out.println("输出的内容为:"+str);
}
//凡是属于IO流的类如果不关闭会一直占用资源
scanner.close();
}
}
(2)hasNext()与hasNextLine()
import java.util.Scanner;
public class code1 {
public static void main(String[] args) {
//创建一个扫描器对象,用于接收键盘数据
Scanner scanner = new Scanner(System.in);
System.out.println("使用hasNext()方法接收:");
//判断用户有无输入字符串
if(scanner.hasNextLine()){
String str = scanner.nextLine();
System.out.println("输出的内容为:"+str);
}
//凡是属于IO流的类如果不关闭会一直占用资源
scanner.close();
}
}
- next()不能得到带有空格的字符串,一定要读取到有效字符才可以结束输入;对输入有效字符之前遇到的空白,next()方法会自动将其去掉;只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
- nextLine()可以获得空白。
方法重载
- 重载就是在一个类中,有相同的函数名,但形参不同的函数。
- 方法重载的规则:
(1)方法名称必须相同
(2)参数列表必须不同(个数不同、或类型不同、参数排列顺序不同等)
(3)方法的返回类型可以相同也可以不同
(4)只是返回类型不同不足以成为方法重载
可变参数
- 方法声明中,在指定参数类型后加一个省略号(…)
- 一个方法中只能指定一个可变参数,必须方法最后一个参数,任何普通的参数必须在它之前声明。
数组
定义:
- 数组是相同类型数据的有序集合。
- 数据描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成
- 每一个数据称作一个数组元素,每个数组元素可以通过下表访问它们。
声明创建:
dataType[] array 或 dataType array[] //声明
dataType[] array = new dataType[arraysize] //new操作符创建数组
特点:
- 数组一经创建,长度不可改变。
- 其元素必须是相同类型,不允许出现混合类型。
- 数组中的元素可以是任何数据类型,包括基本类型和引用类型。
- 数组变量属于引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量。Java中对象是在堆中的,无论数组保存原始类型还是其他对象类型,数组本身是在堆中的。