从零开始学JAVA (二)JAVA变量与运算符

tech2025-04-20  7

1.标识符

凡是自己可以起名字的地方都叫标识符;

 

2.Java中的名称命名规范:

 包名:多单词组成时所有字母都小写:xxxyyyzzz

 类名、接口名:多单词组成时,所有单词的首字母大写:XxxYyyZzz

 变量名、方法名:多单词组成时,第一个单词首字母小写,第二个单词开始每个

单词首字母大写:xxxYyyZzz

 常量名:所有字母都大写。多单词时每个单词用下划线连接:XXX_YYY_ZZZ

 注意1:在起名字时,为了提高阅读性,要尽量有意义,“见名知意”。

 注意2:java采用unicode字符集,因此标识符也可以使用汉字声明,但是不建议使用。

 

3.数据类型

数据类型分为基本数据类型和引用数据类型

long形变量必须以小写L或者大写L结尾

基本数据类型:int4 long8 float4 double8 char1 boolean1 byte1 short2

引用数据类型:

类:class

接口:interface

数组:array []

 

浮点型:

float:4个字节 单精度 精确到七位有效数字

double:8字节 精确到十四位有效数字

float 形变量必须以小写或者大写f结尾 如 float a = 123f;

一个字符=2个字节

自动类型转换:

byte、short、char ->int long float double 依次自动提升 前三种类型做运算转换为int

 

强制类型转换:

int i = (int) d1;

    public static void main(String[] args) {

         char x = 'x';

         int i = 10;

         System.out.println(true? x : i);

         System.out.println(true? 'x' : 10);

    }

答案:

120

x

/*

 * 如果其中有一个是变量,按照自动类型转换规则处理成一致的类型;

 * 如果都是常量,如果一个是char,如果另一个是[0~65535]之间的整数按char处理;

 *           如果一个是char,另一个是其他,按照自动类型转换规则处理成一致的类型;

 */

4.String :

string属于引用数据类型

声明String类型是,使用一对” “。

char 里面必须放一个类型。

string可以和八种数据类型做运算的,且运算只能是连接运算: +

例子:

int number = 1001;

String numberStr = ‘学号:";

String info = numberStr + number;

输出:学号1001

 

String 不能转换为那八个类型。

 

5.关于进制:

对于整数,有四种表示方式:

 二进制(binary) :0,1 ,满2进1.以0b或0B开头。

 十进制(decimal) :0-9 ,满10进1。

 八进制(octal) :0-7 ,满8进1. 以数字0开头表示。

 十六进制(hex) :0-9及A-F,满16进1. 以0x或0X开头表示。此处的A-F不区分大小写。

如:0x21AF +1= 0X21B0

 

进制转换:

对应着2的零次幂,2的一次幂,2的二次幂

 

二进制的整数有如下三种形式:

原码:直接将一个数值换成二进制数。最高位是符号位

负数的反码:是对原码按位取反,只是最高位(符号位)确定为1。

负数的补码:其反码加1。

 

计算机以二进制补码的形式保存所有的整数。

正数的原码、反码、补码都相同

负数的补码是其反码+1

 

所以-14的二进制就是最下面的补码

给个负数就可以按照步骤推回去

 

十进制转为二进制

二进制转八进制

 

6.运算符

算数运算符:

+ - + - * / % ++ -- +

取模,取余运算符,与被模数的符号一样 :

12%5=2,-12%5=-2,-12%-5=-2,12&-5=2;

运算符+= *= ++ --不会改变数据类型。也就是说不会自动发生类型转换

int i =1;

i*=0,1;

编译能通过,不会自动变成double

 

比较运算符 > < >= <=,没啥好说的~

 

逻辑运算符:

逻辑运算符只能适用于BOOL类型的变量。

&-逻辑与 | 逻辑或 !-逻辑非

&& 短路与 a^b 逻辑异或

这里和C++不一样

短路即 (false && true) 如果运行到第一个即已经为false,不会再往后运行。

 

位运算符:

左移,右移等。

 

位运算符

 

交换两个数,按位异或的方法。

三元运算符:

(条件表达式)?表达式1:表达式2

 

最新回复(0)