1.(标识符命名)下面几个变量中,那些是对的?那些是错的?错的请说明理由
A. ILoveJava
B. $20
C. learn@java
D. antony.lee
E. Hello_World
F. 2tigers
正确B,E
错误A:开头第一个字母小写 错误C:字符@不能使用 错误D:字符.不能使用 F:数字不能作为开头
2.(基本类型的运算)一家商场在举行打折促销,所有商品都进行8 折优惠。一
位程序员把这个逻辑写成:
short price = ...; // 先计算出原价
short realPrice = price * 8 / 10; //再计算出打折之后的价格
问:这段代码是否正确?如果正确,假设price 为100,那计算之后的
realPrice值为多少?如果不正确,应该怎么改正?
答:不正确,应将realPrice的类型改为int
3.面试题:
第一题:
byte b1=10,b2=20,b;
b=b1+b2;
b=10+20;
哪句是编译失败的呢?为什么呢?
答:b=b1+b2失败,因为b1+b2超出byte 范围
第二题:(先做,明天讲,超出了byte范围,系统认为就是int-必须将数据强转为int才能计算)
byte x = 129;
有没有问题?有问题如何解决?结果是多少呢? 写出运算过程
答:x=129超出byte范围 ,将byte 改为int
4:计算出十进制46对应的二进制,八进制,十六进制的值。
(可用计算器验证你算的是否正确)
答:二进制 0b00101110 八进制056 十六进制0x2E
5:什么是变量?变量的定义格式?要使用变量需要注意什么?
答:在程序执行过程中,其值不断发生改变的量,称为变量
定义变量的三要素:
1)数据类型
2)变量名:满足标识符的规则
3)初始化值;
数据类型 变量名 = 初始化值;
或者
数据类型 变量名;
变量名= 初始化值;
6:Java中的数据类型分几类?基本数据类型有哪些?
整数类型:4种 :默认类型int
byte:字节类型 所占的字节数1个 (1k=8bit) 范围:-128-127
short:短整型 占 2个字节
int:整数默认类型 占4个字节(使用最多) -2^31 - 2^31 -1
long:长整型类型 占8个字节
long类型:实际开发中----定义系统时间毫秒值
long定义变量的时候,初始化值的后面带上标记l或者L
浮点类型:默认类型double双进度
float:占4个字节 定义变量的时候,初始化值后面 带上标记F或者f
double:占8个字节(默认类型)
字符类型:char
占2字节
布尔类型:boolean
占1个字节
7:Java中的显示转换和隐私转换分别是什么?为什么要使用显示转换(强转)
答:显示转换就是强制转换数据类型,隐式转换就是被动转换数据类型
若必须进行数据类型从大到小的转换则需进行显示转换,否则会报错da
8.编程题: 请将两个变量的数据值进行互相交换,例如int a =10 ;int b = 20 ;最后a是20 b是10
class Price{
public static void main(String[] args){
int a=10;
int b=20;
int temp=0;
temp=a;
a=b;
b=temp;
System.out.println(a);
System.out.println(b);
}
}
9.总结
1)注释
Java中的注释:就是去解释说明代码的文字,为了提高代码阅读性
通常在写代码的时候,养成写注释的习惯!
分类:
普通注释: 不能够被解析的
单行注释 //
多行注释 /* */
特殊注释:
文档注释
/** */
特点:
1)能够提高代码阅读性
2)还可以排错
2)关键字
什么是Java中的关键字?
在Java语言中,被赋予特点含义的单词就是关键字!
而且在高级记事本以及IDEA工具中,对关键字有特殊的颜色标记
class :标记需要定义一个类
public:权限修饰符(公共的,公开的),访问权限足够大(面向对象中讲)
static:静态修饰符(后面在面向对象中讲)
void:Java语言中定义方法的一种格式(在讲方法去讲)
java语言中,组成关键字的字母都是小写;
3)标识符
什么是标识符?
就是给类,变量,接口,方法,以及常量等起名字的字符序列;
起名字做到四个字"见名知意"
标识符的组成规则:
1)英文的26个字母(大小写)
2)可以是数字
3)可以美元符号 $
4)可以是下划线 _
注意事项:
1)但是数字不能开头
2)Java严格区分大小写
3)不能有其他符号出现
4)起名字不能是java中 的关键字
给 类/接口(接口--面向对象部分去说) 起名字
单个单词-----首字母大写即可,其余小写
举例:
class Student{} 学生类
class Hello{} Hello这个类
多个单词-----每个单词的首字母都大写,其余小写 (大驼峰命名法)
举例
class HelloWorld{}
给变量 /方法 起名字:
单个单词-------字母全部小写
举例
int price = 199 ; //商品价格 int类型:整数默认
方法的命名和变量一样
main()
多个单词------第一个单词字母全部小写,从第二个单词开始,每个单词首字母大写,其余小写(小驼峰命名法)
举例
定义一个字符串变量
String userName = "admin" ;
checkUserName()
给常量起名字
单个单词:字母全部大写(很少见)
举例:
HELLO
多个单词:每个单词字母全部大写,单词和单词之间使用下划线_隔开 (实际开发中,常量推荐多个单词的!)
]
举例
自定义:
HELLO_WORLD =100;
PUBLIC_TALK = 200;//公聊
PRIVATE_TALK = 300 ; //私聊
jdk提供很多常量,线程优先级的常量
MAX_PRIORITY:最大优先级 10
MIN_PRIORITY:最小优先级 1
NORM_PRIORITY:默认优先级 5
4)常量
什么是常量?
在程序的执行过程中,其值永远是固定的!
分类:
1)字面值常量
A. 字符串常量 :使用双引号括起来的内容,就是字符串常量
"高圆圆","helloworld","今天天气不错!"
B. 字符常量:使用 单引号括起来的单个内容,称为字符常量
举例
'a','A','0'
'ab' 错误的写法
字符一旦参与运算的时候,此时键盘上的每一个字符都对应ASCII码表的整数值
'A' ---- 65 代表大写字母字符 BCDE....都可以推出来
'a' ---- 97 代表小写字母字符 bcde....都可以推出来
'0' ---- 48 代表数字字符 1233456789 都可以知道
C. 整数常量 ----整数默认十进制 进制也属于常量的范畴!
100
65
78...
D. 小数常量
13.24
3.14...
E. 布尔常量 true/false
F. 空常量 null
2)自定义常量(面向对象中讲----引入关键字 final(最终的,无法更改的))
实际开发中:定义自定义常量
public static final 数据类型 变量名 = 值;
5)变量
什么是变量?
在程序执行过程中,其值不断发生改变的量,称为变量!
定义变量的三要素:
1)数据类型
2)变量名:满足标识符的规则
3)初始化值;
数据类型 变量名 = 初始化值;
或者
数据类型 变量名;
变量名= 初始化值;
举例:
int a = 100 ; //将100赋值int类型的变量a