目录
1.变量
在Java中:变量必须先定义,才可以使用,且不能重名(注:Java的变量不能赋空值!)
变量定义的方式:
public class Main {
public static void main(String[] args) {
int a = 1;
int b, c = a, d = 3 / 2;
}
}
Java的数据类型:
类型 | 字节数 | 举例 |
byte | 1 | 123 |
short | 2 | 12345 |
int | 4 | 123456789 |
long | 8 | 1234567891011L |
float | 4 | 1.2F |
double | 8 | 1.2,1.2D |
boolean | 1 | true,false |
char | 2 | 'A' |
常量:
使用final修饰:
final int N = 1000;
数据类型转换:
显示转换:int x = (int)'A';
隐式转化:double x = 12, y = 4 * 3.3;
代码解析:1.强制类型转换
2.做四则运算时,Java会先转换为同一数据类型再进行计算,即先将4转换为4.0(小转大默认转),最后以double的类型将值赋给x
表达式的加减乘除四则运算:
整数:
public class Main {
public static void main(String[] args) {
int a = 2 + 7 * 3 / 2 - 6;
System.out.println(a);
int b = a * 8 + 4 / 2;
System.out.println(b);
System.out.println(17 * 43 - 59 / 3);
}
}
浮点数:
public class Main {
public static void main(String[] args) {
double x = 1.22, y = 4.88;
System.out.println(x * y);
System.out.println(x + y);
System.out.println(x - y);
System.out.println(x / y);
}
}
整型变量的自增、自减:
public class Main {
public static void main(String[] args) {
int a = 1;
int b = a ++ ;
System.out.println(a + " " + b);
int c = ++ a;
System.out.println(a + " " + c);
}
}
2.输入输出
输入:
1)、效率较低,输入规模较小时(<10的五次方)使用
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
String str = sc.next();
int x = sc.nextInt();
float y = sc.nextFloat();
double z = sc.nextDouble();
String line = sc.nextLine(); // 读入下一行
}
}
2)、效率较高,输入规模较大时使用。(注:需要抛异常!!)
import java.io.BufferedReader;
import java.io.InputStreamReader;public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
System.out.println(str);
}
}
输出:
1)、效率较低,输出规模较小时使用。(同输入1)
public class Main {
public static void main(String[] args) throws Exception {
System.out.println(123);
System.out.println("Hello World"); // 输出字符串 + 换行
System.out.print(123);
System.out.print("yxc\n"); // 输出字符串
System.out.printf("%04d %.2f\n", 4, 123.456D); // 格式化输出,float与double都用%f输出
}
}
System.out.printf()中不同类型变量的输出格式:
(1) int:%d
(2) float: %f, 默认保留6位小数
(3) double: %f, 默认保留6位小数
(4) char: %c, 回车也是一个字符,用'\n'表示
(5) String: %s
2)、效率较高,输出规模较大时使用。(同输入2)(注:需要抛异常!!)
import java.io.BufferedWriter;
import java.io.OutputStreamWriter;public class Main {
public static void main(String[] args) throws Exception {
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
bw.write("Hello World\n");
bw.flush(); // 需要手动刷新缓冲区
}
}
课后练习:
一、
给定三个整数,请你找出它们中的最大值。
下列公式可能对你有所帮助:
输入格式
输入占一行,包含三个整数。
输出格式
输出格式为 X eh o maior
,其中 X 为三个数中的最大值。
数据范围
1 ≤ 给定整数 ≤ 1.0e9
输入样例:
7 14 106
输出样例:
106 eh o major
二、
两辆汽车在同一地点,同时,沿同一方向前进。
一辆车的速度为 60 km/h,另一辆车的速度为 90 km/h。
显然,快车与慢车的距离会不断拉开,每过一个小时(60 分钟),两车的距离就拉开 30 公里。
现在,告诉你两车之间的距离为 LL 公里,请你求出两车已经行驶了多长时间?
输入格式
输入包含一个整数 LL,表示两车之间的距离。
输出格式
输出格式为 X minutos
,其中 X 为已经行驶的时间,单位为分钟。
数据范围
1 ≤ L ≤ 1.0e9
输入样例:
30
输出样例:
60 minutos