一、变量
在Java中,变量用于存储数据值,可以是数字、文本或其他类型的信息。Java中的变量必须声明后才能使用,并且每个变量都有特定的类型。下面是一些基本的变量使用示例:
- 声明一个整型变量并赋值:
int myNumber;
myNumber = 10;
或者可以在一行中完成声明和赋值:
int myNumber = 10;
- 声明一个浮点型变量并赋值:
double myDouble = 10.5;
- 声明一个字符串变量并赋值:
String myString = "Hello, world!";
- 声明一个布尔型变量并赋值:
boolean myBoolean = true;
- 使用变量进行计算:
int a = 5;
int b = 10;
int sum = a + b;
System.out.println("The sum is: " + sum);
- 变量的作用域:
public class Main {public static void main(String[] args) {int x = 10; // x可以在main方法内部访问System.out.println("Value of x is: " + x);}public static void someMethod() {// System.out.println("Value of x is: " + x); // 这行代码会报错,因为x的作用域仅限于main方法}
}
在上面的例子中,变量x
只能在main
方法内部访问,它不属于someMethod
方法的作用域。
7. 常量:
在Java中,使用final
关键字可以声明一个常量,表示这个变量的值在初始化之后不能更改。
final double PI = 3.14159;
- 静态变量:
静态变量属于类,而不是类的某个具体实例。它们可以在类的所有实例之间共享。
public class MyClass {public static int staticVariable = 10;public static void main(String[] args) {System.out.println("Value of staticVariable is: " + MyClass.staticVariable);}
}
这些例子展示了在Java中如何声明、初始化和修改变量。根据您的具体需求,您可以选择不同的变量类型和作用域。
变量相关的注意事项
- 只能存储一个值。
- 变量名不允许重复定义。
- 一条语句可以定义多个变量。
- 变量在使用前一定要赋值。
- 变量的作用域范围。
二、计算机的存储方式
关于进制
二进制:Binary
十进制:Decimal
八进制:Octal
十六进制:Hexadecimal
十进制转为其他进制的方法
编码
图片的存储
声音数据
三、数据类型
在 Java 中,数据类型分为两大类:基本数据类型(Primitive Data Types)和引用数据类型(Reference Data Types)。
基本数据类型
Java 有 8 种基本数据类型,它们分别是:
byte
:8 位有符号整数,取值范围从 -128 到 127。short
:16 位有符号整数,取值范围从 -32,768 到 32,767。int
:32 位有符号整数,取值范围从 -2^31 到 2^31-1。long
:64 位有符号整数,取值范围从 -2^63 到 2^63-1。float
:32 位 IEEE 754 浮点数。double
:64 位 IEEE 754 浮点数。char
:16 位 Unicode 字符,取值范围从 ‘\u0000’(即为 0)到 ‘\uffff’(即为 65,535)。boolean
:表示逻辑值 true 和 false。
示例代码
public class Main { public static void main(String[] args) { // byte byte b = 10; System.out.println(b); // short short s = 20; System.out.println(s); // int int i = 30; System.out.println(i); // long long l = 999999999999999999L; System.out.println(l); // float float f = 3.14f; System.out.println(f); // double double d = 3.14; System.out.println(d);; // char char c = 'a'; System.out.println(c); }
}
在 Java 中,当你定义一个
long
类型的变量并赋值时,如果该整数的值超出了int
类型的范围(-2^31 到 2^31-1),那么你需要明确地告诉编译器这是一个long
类型的值。这是因为整数常量在 Java 中默认是int
类型的,除非你用某种方式指示编译器将其视为long
类型。
为了指示一个整数是
long
类型,你可以在整数值后面加上字母L
(大小写均可,L
或l
),这样做是为了避免整数溢出并提供清晰的代码可读性。例如:
long num = 123456789012345L; // 正确,指定为 long 类型
如果你不加上
L
,并且数值超出了int
的范围,编译器会报错,因为它无法将大数值直接赋值给int
类型的变量。例如:
int num = 123456789012345; // 错误,数值超出 int 范围
在上面的例子中,你需要将数值后面的
L
添加到整数值来修正错误:
long num = 123456789012345L; // 正确,指定为 long 类型
需要注意的是,虽然
long
类型也可以接受小数,但是在这种情况下,小数会被视为double
类型,而不是long
类型。如果你想要将一个精确的小数赋值给long
类型变量,你需要对其进行类型转换。
引用数据类型
引用数据类型指向一个对象,它们包括:
- 类(Class):例如 String、Integer、System 等。
- 接口(Interface):一种只含有抽象方法和静态常量的引用类型。
- 数组(Array):一种可以存储多个同类数据项的容器。
- 枚举(Enum):在 Java 5 中引入,用于定义一组固定的常量值。
引用数据类型默认值为null
,表示没有引用任何对象。
基本数据类型和引用数据类型的主要区别在于:
- 基本数据类型的变量直接存储值,而引用数据类型的变量存储的是对象的引用(内存地址)。
- 基本数据类型在栈内存中分配空间,而引用数据类型的对象在堆内存中分配空间,引用(引用变量的值)在栈内存中。
- 基本数据类型的赋值是值的复制,而引用数据类型的赋值是引用的复制。
- 基本数据类型参与运算时是值参与,而引用数据类型参与运算时通常是对对象的引用参与。
四、标识符
什么是标识符?
在编程语言中,标识符(Identifier)是程序员定义的用来标识变量、函数、类、模块或其他用户定义的项目名称的字符串。
命名规则
- 标识符必须以字母(A-Z,不区分大小写)或下划线开头。
- 标识符不能是保留字或关键字。
- 标识符通常是大小写敏感的(如 Java、C++、C# 等)。
- 标识符不能包含空格或其他标点符号(除下划线和美元符号外)。
- 标识符的长度通常有限制,但这个限制因语言而异。
常用命名法
在编程中,常用的命名法有几种,它们旨在提高代码的可读性和一致性。以下是一些常见的命名法:
- 驼峰命名法(CamelCase)
- 小驼峰命名法(lowerCamelCase):第一个单词以小写字母开始,后续单词的首字母大写。常用于变量名、函数名和对象属性。
示例:firstName
,lastName
,calculateAge
- 大驼峰命名法(UpperCamelCase):第一个单词以大写字母开始,后续单词的首字母大写。常用于类名、接口名和枚举名。
示例:Person
,LinkedList
,HttpRequest
- 小驼峰命名法(lowerCamelCase):第一个单词以小写字母开始,后续单词的首字母大写。常用于变量名、函数名和对象属性。
- 蛇形命名法(Snake Case):
- 所有单词都用下划线分隔,并且所有字母都是小写。常用于Python和一些系统级别的编程语言。
示例:first_name
,last_name
,calculate_age
- 所有单词都用下划线分隔,并且所有字母都是小写。常用于Python和一些系统级别的编程语言。
- 帕斯卡命名法(Pascal Case):
- 与大驼峰命名法相同,所有单词的首字母都大写。
示例:Person
,LinkedList
,HttpRequest
- 与大驼峰命名法相同,所有单词的首字母都大写。
- 匈牙利命名法(Hungarian Notation):
- 在变量名前加上一个或多个前缀,以指示变量的类型或用途。这种命名法在现代编程中已经不太常见。
示例:szName
(字符串名称),nAge
(整型年龄)
- 在变量名前加上一个或多个前缀,以指示变量的类型或用途。这种命名法在现代编程中已经不太常见。
- 下划线命名法(Underscore Case):
- 类似于蛇形命名法,但是使用单个下划线来分隔单词,并且通常用于私有变量或函数。
示例:_first_name
,_last_name
,_calculate_age
- 类似于蛇形命名法,但是使用单个下划线来分隔单词,并且通常用于私有变量或函数。
- 大写下划线命名法(SCREAMING_SNAKE_CASE):
- 所有单词都用下划线分隔,并且所有字母都是大写。常用于常量名。
示例:MAX_VALUE
,TOTAL_COUNT
不同的编程语言和开发社区可能会偏好不同的命名法。在选择命名法时,最重要的是保持一致性,并遵循你所使用的编程语言或项目的标准约定。
- 所有单词都用下划线分隔,并且所有字母都是大写。常用于常量名。
五、键盘输入流
在Java中,实现键盘输入有多种方式,以下是一些常见的方法:
使用 Scanner
类
Scanner
类是Java标准库中用于获取用户输入的常用类。以下是一个简单的例子:
// 导包 -- 寻找 Scanner 类
import java.util.Scanner;
public class Main {public static void main(String[] args) {// 创建对象 使用类 Scanner 实例化 对象 scannerScanner scanner = new Scanner(System.in);System.out.print("请输入一个数字:");// 接收数据int num = scanner.nextInt();System.out.println("您输入的数字是:" + num);scanner.close();}
}
补充知识
Java学习九—常用包(类)之java.util包 http://t.csdnimg.cn/Kg0BA