☰
Java自学笔记Day2
2026/10/10 2:48:23 网站建设 项目流程

一、变量的概念

1.1 变量的基本概念

  • 电脑使用内存来记忆计算时所使用的数据;
  • 在程序运行期间其值可以改变的量称为变量;
  • 变量必须先定义后使用。定义变量时,系统依据变量定义的类型,给变量开辟对应大小的存储单元来存放数据。

1.2 尝试定义一个变量并输出:

public class T1 { public static void main(String[] args) { //定义一个变量 //Java保存证书的类型 int int num = 5; System.out.println(num); } }

输出结果:

1.3 案例一:电影票

已知一位小朋友的电影票价是15元,计算20位小朋友的总票价是多少?

public class T2 { public static void main(String[] args) { //电影票 //已知单张票价和总人数 //总金额=单张票价*总人数 int price=15; int num=20; int money=price*num; System.out.println("总金额"+money+"元"); } }

输出结果:

1.4 变量三要素

  • 类型:决定了占用空间的大小
  • 名称:如何提取数据
  • 变量值:可以改变的

1.5 变量命名规则

  • 标识符不能和系统里的关键字同名;
  • 标识符只能包括字母、数字和下划线"_",并且开头只能是字母或下划线;
  • 标识符必须先定义,后使用;
  • 在同一作用域内,标识符不能重复定义;
  • 标识符是区分大小写的,如sum和Sum是不同的标识符;
  • 标识符要尽量做到“知名见义”,增强程序的可读性。

二、Java中常用数据类型

Java中常见数据类型
数据类型案例
int(整型)用于存储整数,如:-1000、0、10000
double(双精度)用于存储小数,如:1.2、2.5
char(字符型)用于存储单个字符,如:’a‘、’1‘
string(字符串)用于存储一串字符,如:“Java编程”,“Hello World!”

2.1 常量

  • 在程序运行过程中,其值不能改变的量;
  • final double PI =3.14;
  • 优点:比较安全,后续代码不允许更改其值
public class T3 { public static void main(String[] args) { //常量,其值不可以改变的量 final double PI = 3.14; //如果常量一旦定义,后续谁也没有权限更改值 System.out.println(PI); } }

输出结果:

  • 注意事项:
    • 常量通常大写
    • 只能被赋值一次,通常定义时即对其进行初始化

2.2 练习:

使用变量存储以下电脑信息,并打印输出:

  • 品牌(brand):华为MateBook14s
  • 尺寸(size):14.2
  • 内存(ram):16
  • 价格(price):6899
public class T4 { public static void main(String[] args) { //电脑信息登记 //品牌、尺寸、内存、价格 String brand = "华为MateBook14s"; double size = 14.2; int ram = 16; int price = 6899; System.out.println("品牌:"+brand); System.out.println("尺寸:"+size); System.out.println("内存:"+ram); System.out.println("价格:"+price); } }

输出结果:

三、运算符的分类和使用

3.1 算术运算符

数学符号Java中的运算符
++
--
×*
÷/
取余数%

3.2 赋值运算符

a = 880;表示把880赋值给a。

b = 300;表示把300赋值给b。

c = a * b;表示把 a * b 的积赋值给c。

P.S.:赋值语句的作用,就是把赋值号右边的值(或表达式的值)赋值给左边的变量。

3.3 练习

int num1 = 5; int num2 = 2; int a = num1 % num2; int b = num1 / num2; System.out.println(num1 + "%" + num2 + "=" + a); System.out.println(num1 + "/" + num2 + "=" + b);

输出结果:

3.4 自增、自减运算符

//自增运算符 int num = 2; num++; System.out.println(num);
//自减运算符 int num = 2; num--; System.out.println(num);
public class T6 { public static void main(String[] args) { //++在前:先让变量的值+1,然后参与原酸(对于println来说,就是打印到屏幕上)。 int num = 2; System.out.println(++num); } }

结果为:3

public class T6 { public static void main(String[] args) { //++在后:先取出变量的值参与运算,然后再让变量的值+1。 int num = 2; System.out.println(num++); } }

结果为:2

3.5 练习

已知圆的半径为1.5,求圆的周长和面积。

提示:dobule pi = 3.14; //圆周率

代码:

public class T7 { public static void main(String[] args) { //求圆的周长和圆的面积 double r = 1.5; final double PI = 3.14; double cir_circum = 2 * PI * r; double cir_area = PI * r * r; System.out.println("圆的周长为:"+cir_circum); System.out.println("圆的面积为:"+cir_area); } }

输出结果:

四、类型转换

4.1 自动转换类型

  • 自动转换类型
    • 类型相容
    • 目标类型 > 源类型
    • 例如:
public class T8 { public static void main(String[] args) { //类型转换 //自动类型转换 double num1 = 1.2; int num2 = 2; double result = num1 + num2; System.out.println(result); } }

输出结果:

4.2 强制转换类型

  • 强制转换类型
    • (类型名)表达式
    • 例如:
      • double a = 5.2;
      • int b = (int)a;
public class T9 { public static void main(String[] args) { //类型转换 //强制转换类型 double num = 5.2; int num2 = (int)num; System.out.println(num2); } }

输出结果:

4.3 练习

小明准备实现一个数字加密器,加密规则是

加密结果 = (整数*8+3)/2+2.6

加密结果仍为一个整数

public class T10 { public static void main(String[] args) { int num = 5; int result = (int)((num * 8 + 3)/2 + 2.6); System.out.println(result); } }

输出结果:

五、Scanner类接收用户输入

Scanner input = new Scanner(System.in); int num = input.nextInt();

例如:

import java.util.Scanner; public class T11 { public static void main(String[] args) { //接收用户输入 Scanner input = new Scanner(System.in); int num = input.nextInt(); System.out.println("您输入的数字为:"+num); } }

输出结果:

P.S.:第一次输入代码的时候报错,报错结果是:

原因是需要先调用包,即在输入代码之前,需要先输入:

import java.util.Scanner;

六、练习题

6.1 练习一

已知某班有男同学20位,女同学15位,20位男生平均分是87分,15位女生的平均分是85,问全体同学平均分是多少分?

public class T12 { public static void main(String[] args) { //求全班同学的平均分 int count_boy = 20; int count_girl = 15; int avg_boy = 87; int avg_girl = 85; double sum = count_boy * avg_boy + count_girl * avg_girl; double result = sum / (count_boy + count_girl); System.out.println("全班同学的平均分为:"+result); } }
public class T12 { public static void main(String[] args) { //求全班同学的平均分 int count_boy = 20; int count_girl = 15; int avg_boy = 87; int avg_girl = 85; double sum = count_boy * avg_boy + count_girl * avg_girl; double result = sum / (count_boy + count_girl); String result_xiaoshu = String.format("%.2f",result); System.out.println("全班同学的平均分为:"+result_xiaoshu); } }

6.2 练习二

格莱尔买来30根骨头,第一天吃掉一半后又吃了一根,第二天将剩下的骨头吃了一半后,又吃了一根,第三天仍然如此,第三天吃完后还剩下多少根骨头?

public class T13 { public static void main(String[] args) { //第三天剩下的骨头数量 int pri = 30; int day1 = pri / 2 - 1; int day2 = day1 / 2 - 1; int day3 = day2 / 2 - 1; System.out.println("第三天剩下的骨头数量:"+day3); } }

6.3 练习三

对一个三位数123分离数位

public class T14 { public static void main(String[] args) { //分离各个分位上的数字 int num = 123; int hun = num / 100; int ten = (num - hun * 100)/ 10; int one = (num - hun * 100 - ten * 10); System.out.println("百分位上的数字为:" + hun); System.out.println("十分位上的数字为:" + ten); System.out.println("个位上的数字为:" + one); } }

6.4 练习四

交换两个变量的值:输入两个整型变量a,b,交换他们的值,并输出交换的结果

public class T15 { public static void main(String[] args) { //交换变量 int a = 3; int b = 5; System.out.println("交换前a和b的值分别为:"+a+" "+b); int c = a; a = b; b = c; System.out.println("交换后a和b的值分别为:"+a+" "+b); } }

6.5 练习五

一个三位数,百位上的数比十位上的数大1,个位上的数是百位上的数的2倍,若十位上的数为3,这个三位数是多少?

public class T16 { public static void main(String[] args) { //按要求输出三位数 int ten = 3; int hun = ten + 1; int one = hun * 2; int result = one + ten * 10 + hun * 100; System.out.println("这个三位数是:"+result); } }

6.6 练习六

输入一个小写字母,输入其对应的大写字母。例如输入q时,会输出Q。

import java.util.Scanner; public class T17 { public static void main(String[] args) { //将小写字母转换成大写字母 Scanner scanner = new Scanner(System.in); System.out.println("请输入一个字母:"); String input = scanner.nextLine(); String upper = input.toUpperCase(); System.out.println("转换结果:" + upper); scanner.close(); } }

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询