输出语法(2)
System.out.print("Hello, ");//使用 System.out.print() 输出文本:
System.out.print("World!");//这将在同一行上依次打印 "Hello, " 和 "World!",不会自动换行
int age = 30;//定义变量age
System.out.println("My age is " + age);输出变量值,这将输出 "My age is 30"
double price = 19.99;//定义变量price
System.out.printf("The price is %.2f", price);//保留两位小数输出,这将输出 "The price is 19.99"
System.out.println("Line 1\n Line 2");// \n是换行符
3.变量与数据类型
原始数据类型(Primitive Data Types):
-
整数类型:
byte
:1字节,范围为 -128 到 127。short
:2字节,范围为 -32,768 到 32,767。int
:4字节,范围为 -2^31 到 2^31 - 1。long
:8字节,范围为 -2^63 到 2^63 - 1。
-
浮点类型:
float
:4字节,用于表示单精度浮点数。double
:8字节,用于表示双精度浮点数。
-
字符类型:
char
:2字节,用于表示一个Unicode字符。
-
布尔类型:
boolean
:用于表示真或假值,只有两个值:true
和false
。
引用数据类型(Reference Data Types):
-
类(Class):用户自定义的数据类型,用于表示对象。类是Java面向对象编程的基础。
-
接口(Interface):用于定义一组方法,类可以实现接口以获得接口中定义的方法。
-
数组(Array):用于存储相同数据类型的元素的集合。
-
枚举(Enum):用于创建一组有限的命名常量。
-
其他引用类型:包括字符串(
String
)、集合(List
、Set
、Map
等)以及其他Java标准库中提供的类。
变量
在编程中,变量是用于存储数据值的容器。在Java中,变量具有以下特点:
1. **数据类型**:每个变量都必须具有一个数据类型,它定义了变量可以存储的数据种类。Java是一种静态类型语言,因此在声明变量时必须明确指定其数据类型。
2. **标识符**:变量的名称称为标识符,它必须遵循一定的命名规则。标识符可以包括字母、数字和下划线,但必须以字母或下划线开头,不能是Java关键字,并且区分大小写。
3. **赋值**:在创建变量时,你可以将一个值赋给它。这个过程称为初始化。
4. **可更改性**:变量的值可以随时更改,但要遵循其数据类型的规则。
以下是在Java中声明和使用变量的一般语法:
// 声明一个整数变量age
int age;
// 初始化变量并赋值
age = 30;
// 声明和初始化一个字符串变量 John
String name = "John";
// 输出变量的值
System.out.println("Name: " + name);//结果为Name:John
// 更改变量的值
age = 31;
System.out.println("Age: " + age); //结果为Age:31
3.5.固定常量
在Java中,你可以使用`final`关键字来声明一个不可更改的常量。常量的命名通常使用大写字母,下划线分隔单词,以提高可读性。以下是如何声明和表示一个固定常量的示例:
public class ConstantsExample {
// 声明整数常量
public static final int MAX_VALUE = 100;
// 声明字符串常量
public static final String GREETING = "Hello, World!";
public static void main(String[] args) {
System.out.println(MAX_VALUE);
System.out.println(GREETING);
// 尝试修改常量的值将导致编译错误
// MAX_VALUE = 200; // 这行代码会导致编译错误
}
}
在上面的示例中,`MAX_VALUE`和`GREETING`都是常量。它们被声明为`final`,并且在声明时被初始化。一旦初始化,这些常量的值不能被修改。在代码中,你可以随时使用它们,但尝试修改它们的值将导致编译错误。
通过使用`final`关键字来声明常量,你可以确保常量的值在程序的执行过程中保持不变,提高了代码的可读性和可维护性。通常,常量名使用全大写字母和下划线以突出显示它们是不可更改的。
4.转换数据类型
在Java中,你可以执行数据类型转换,以将一个数据类型的值转换为另一个数据类型。数据类型转换通常分为两种类型:隐式转换和显式转换。
1. 隐式转换(Implicit Casting):
这是自动的数据类型转换,其中较小的数据类型可以自动转换为较大的数据类型,而不会导致数据丢失或溢出。例如,将一个`int`赋值给一个`double`,因为`double`可以容纳`int`的所有可能值。
int intValue = 42;
double doubleValue = intValue; // 隐式转换
2. 显式转换(Explicit Casting):
这是有意地将一个数据类型转换为另一个数据类型,通常需要使用强制类型转换操作符。显式转换可能导致数据损失或溢出,因此需要谨慎使用。例如,将一个`double`强制转换为`int`,会截断小数部分。
double doubleValue = 42.5;
int intValue = (int) doubleValue; // 显式转换
在显式转换中,你需要使用括号将目标数据类型括起来,并在变量前使用括号和强制类型转换操作符。这将告诉编译器执行指定的数据类型转换。
需要注意的是,当将一个较大的数据类型转换为较小的数据类型时,可能会导致数据溢出或精度损失。因此,必须谨慎处理数据类型转换,以确保不会丢失重要信息。
以下是一些常见的数据类型转换的示例:
double doubleValue = 42.5;
int intValue = (int) doubleValue; // 将double转换为int,损失小数部分
int intValue = 42;
double doubleValue = intValue; // 将int隐式转换为double
int intValue = 100;
byte byteValue = (byte) intValue; // 将int显式转换为byte,可能导致溢出
数据类型转换在Java编程中非常常见,它可以用于适应不同数据类型之间的操作和赋值要求。但要小心处理,以避免潜在的问题。
个人实践
import java.util.Scanner;
public class demo3 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("echo:" + in.nextLine());
final int c = 666; //固定常量c
System.out.println(c);//输出常量c
int a;// 整型变量a
a = in.nextInt(); // 整型输入
float b;// 浮点数变量b
b = in.nextFloat();// 浮点数输入
double d;//浮点数变量d
d = in.nextDouble();//浮点数输入
System.out.println((a + 2) + b + d);// 浮点型输出,结果是6.0
System.out.println((int) ((a + 2) + b + d ));// 浮点型转换整型 结果是6
}
}