您的位置 首页 java

Java编程从零开始02 变量、标识符和类型转换

点击右上角,加关注,私信“项目课程”,即可获得高并发分布式电商项目以及适合初学者的网盘项目课程视频和源码哦[吻]

标识符

什么是标识符

标识符就是Java中的各种名字,由程序员来定义,包括:

  • 类名
  • 方法名
  • 变量名
  • 包名
  • 常量名…

标识符的命名规则

标识符必须按一定的规则定义,违反命名规则的标识符,会出现编译错误Java标识符的命名规则是:

  1. 必须由英文字母、数字和下划线、$组成
  2. 不能以数字作为开头
  3. 不能使用Java中的关键字

Java的关键字:

标识符的命名规范

命名规范不是强制性的,但良好的命名规范,对代码的可读性和维护性是非常重要的。Java的命名规范包括:

  1. 见名知义,需要由有意义的英文单词
  2. 变量名和方法名,驼峰命名,由一个或多个单词组成,第一个单词的开头小写后面的单词开头大写,如:goodsPrice、person、myFirstPersonAge
  3. 类名,类似驼峰命名,每个单词的开头都是大写,如:HelloWorld、MyFirstHomework
  4. 包名:全部单词小写中间由.连接,域名.公司名.项目名.模块名,如:com.sun.oa.login
  5. 常量名,全部单词大写,中间由下划线分隔,如:MAX_VALUE

练习:请判断哪些是合法的标识符:

 HelloWorld
username2
user_name
_userName
$abc_123 
2UserName
user#Name
Hello  World
java
class  

变量

变量的概念

变量是在JVM的内存中的一个个空间,用于存储Java程序中各种数据,变量中的数据可以随时修改。如在执行游戏时,英雄的名字、血量、魔法值、等级这些都可以用变量保存。

使用变量

变量的三个要素

  1. 变量名
  2. 数据类型
  3. 初始值

定义变量的方法

  1. 定义变量,同时初始化数据类型 变量名 = 初始值;如:int hp = 100;
  2. 先定义变量,然后再初始化数据类型 变量名;变量名 = 值;int hp;hp = 100;
  3. 同时定义多个类型相同的变量数据类型 变量名1 = 值,变量名2 = 值;int hp = 100,mp = 300;

变量的作用域

作用域是变量能够起作用的范围

  • 局部变量在方法中定义的变量,作用域就是定义该变量的方法内部,局部变量在使用之前必须初始化。
  • 全局变量在类中的所有方法外面定义的变量,作用域就是整个类,全局变量如果不初始化会有默认值。
 public class Demo01 {

int x = 9; //全局变量

public static void main(String[] args) {
//局部变量
String name = "貂蝉";
int hp = 100;
int mp = 200;
System.out.println("英雄的名字是:" + name);
System.out.println("英雄的血量是:" + hp);
System.out.println("英雄的魔法值是:" + mp);
}

}  

执行下面代码有什么问题?

 public class Demo02 {
public static void main(String[] args) {
int num1;
int num2 = num1 + 1;
}
}  

变量的数据类型

注意:

  1. long类型变量赋值时,数字后面要加L或l,推荐使用Llong num = 100L;
  2. float类型变量赋值时,浮点数后要添加f或F,否则默认是double类型,赋值出错float num = 10.5f;
  3. char的值用单引号括起来char c = ‘A’;

类型转换

不同的数值类型之间可以进行数据类型的转换数值类型有:byteshortintlongfloatdoublechar

数值类型的取值范围从小到大排列为:

byte -> short -> int -> long -> float -> double

类型转换:

  1. 自动类型转换从小的类型转换为大的类型由编译器自动完成
 long num = 200; //200属于int类型,编译器自动会将200转换200L,赋值给long类型的变量num。
byte num2 = 100;//100在byte取值范围内,100作为byte保存。
int num1 = num2; //byte -> int
double price = 2500; //int -> double  
  1. 强制类型转换大的类型转换为小的类型需要手动完成
 数据类型 变量名 = (数据类型)值;  

注意:强制类型转换可能丢失精度

 /*
对于整数值编译器会看做char数值进行处理,
对于变量编译器不会进行处理,就需要强制类型转换
*/int num3 = 99;
char char1 = (char)num3;
/*
对于short类型,如果赋值的数字在-32768~32767之间,编译器会作为short数字进行处理
如果超过该范围,就会作为int数字处理
*/short num5 = (short)50000;  

总结:类型转换都会对程序性能有影响。

练习

 找出下面代码中不能通过编译的代码
int n1 = 20;
int n2 = 20.5;
int n3 = 100L;
float f1 = 20;
float f2 = 5.5;
float f3 = 3.3f;
double d1 = 15;
double d2 = 33.3f;
double d3 = 20L;
d1 = n1 + f1;  //表达式的类型由表达式中最大的数据类型决定
f1 = d1;  

键盘输入

从键盘输入值给变量赋值,需要用到Scanner类(扫描器)

 //导入Scanner
import java.util.Scanner;
public class Demo03 {
public static void main(String[] args) {
//创建Scanner对象
Scanner input = new Scanner(System.in);
//输入字符串
String name = input.next();
//输入整数
int age= input.nextInt();
System.out.println("英雄的名字是:" + name);
System.out.println("英雄的年龄是:" + age);
}

}  

结束

作业:

1、输入游戏角色的名称、攻击力、血量、级别等信息,并输出。

2、输入两个整数,交换两个变量的值

文章来源:智云一二三科技

文章标题:Java编程从零开始02 变量、标识符和类型转换

文章地址:https://www.zhihuclub.com/179315.shtml

关于作者: 智云科技

热门文章

网站地图