商丘做网站的费用,南京做网站南京乐识专业,网片的重量计算公式,软件开发公司网络安全管理制度1. 变量
1.1 变量的概念
变量是计算机内存中的一块存储单元#xff0c;是存储数据的基本单元变量的组成包括#xff1a;数据类型、变量名、值#xff0c;后文会具体描述变量的本质作用就是去记录数据的#xff0c;比如说记录一个人的身高、体重、年龄#xff0c;就需要去…1. 变量
1.1 变量的概念
变量是计算机内存中的一块存储单元是存储数据的基本单元变量的组成包括数据类型、变量名、值后文会具体描述变量的本质作用就是去记录数据的比如说记录一个人的身高、体重、年龄就需要去程序中记录数据而不同的数据使用不同的数据类型去存储后文会具体描述
1.2 变量的定义
变量的定义有三种方法
直接声明先声明后赋值多个同类型变量声明与赋值
代码举例
public class VariableDefine {public static void main(String[] args) {int age; //第一种方法变量的声明age 21;int number 12345; //第二种方法先声明后赋值int a,b,c 100,d123; //第三种方法多个同类型变量声明与赋值System.out.println(age age);System.out.println(number number);System.out.println(c c);System.out.println(d d);}
} 以上代码可以清晰看到三种变量的定义方法 输出结果 要实现 age 21这种效果只需要在输出时用字符串 变量就可以了如上输出其中只做文字拼接不做加法计算 注意如果只是单纯输出变量的值不需要双引号如 System.out.println(age); //输出变量的值不需要加双引号
System.out.println(age);
//如果加了双引号那么输出的是字符age既不是变量age也不是变量的值。输出结果
注意事项 未赋值的变量是不能使用的当我们注释掉了age此时age就没有赋值可以看到没有赋值是直接报错了 第三种定义变量的方法不推荐使用因为代码可读性不高不便于阅读
1.3 变量概念解析
有了变量的定义用以上代码解析一下变量的概念
变量是计算机内存中的一块存储单元是存储数据的基本单元 当我们声明一个变量ageint age;那么在内存当中就会开辟一个int字节的空间这块空间的名称叫做age我们可以通过age来访问到这一块空间
此时里面还没有数据我们只需要赋值age 21;就把数据存到内存当中
变量的组成包括数据类型、变量名、值 比如说int number 12345;其中int是整数类型变量名为number值为12345这三个部分组成了一个number变量
2.数据类型
Java是一个强类型的语言它的变量具有严格的数据类型区分
在Java中任何一个值都有他对应的数据类型
我们可以大概的把数据类型分为两类
基本数据类型 整数浮点数字符类型布尔类型 引用数据类型可以理解为除了基本数据类型其他基本上都是引用数据类型 字符串数组对象
下面将会具体介绍数据类型
2.1 整数类型
整数类型里面有四种类型
类型字节取值范围二进制取值范围十进制byte1字节-2^7 ~2^15-1-128~127short2字节-2^15 ~ 2^15-1-32768~32767int4字节-2^31 ~ 2^31-1-2147483648~2147483647long8字节-2^63 ~ 2^63-1-9223372036854775808~9223372036854775807
其中int是整数的默认类型
代码举例
public class DateType {public static void main(String[] args) {byte a 127;short b 32767;int c 2147483647;long d 9223372036854775807;}
}
可以看到实际上在编译器上 当我们定义一个long类型为什么输入了数字之后明明是long的合法范围却显示最大呢 _idimg-Os2Lh8gN-1725799836837) 那是因为整数的默认类型是int类型所以当你输入这么大个数字的时候其实默认的是把这个数字存放到int类型的空间中但是很显而易见四个字节的空间无法存放这么大的数字。 解决方法在后面加个L表示是long类型即 long d 9223372036854775807L;那么我们什么时候会加L呢 当数值超过了int类型的范围则需要在数值后面加上L当数值并未超过int类型的范围则可加可不加 一般如果不加的话且没超过int类型的范围那么就是默认int类型即使你变量的数据类型是long但值如果没超过int类型的话实际上还是以int类型存放因为假如定义了long d 100;那么就会开辟8个字节空间来存放100造成了很大的空间浪费
2.2 浮点类型
浮点类型主要是单精度浮点数(float)和双精度浮点数(double)两者都是近似值而不是精确值
类型字节负数取值范围正数取值范围float4字节-3.4E38 ~ -1.4E-451.4E-45 ~ 3.4E38double8字节-1.7E308 ~ -4.9E-3244.9E-324 ~ 1.7E308
其中double为浮点数的默认类型若要为float赋值需要在值的后面加F
代码举例
public class DateType {public static void main(String[] args) {float a 3.4E38F;double b 1.7E308;System.out.println(a a);System.out.println(b b);}
}
2.3 字符类型
类型字节取值范围(无符号数)字符编码char2字节0 ~ 65535Unicode字符集(万国码)
Unicode字符集支持ASCII码
2.3.1 字符类型的赋值方式 字符赋值 public class DateType {public static void main(String[] args) {char ch1 a;char ch2 1;char ch3 耶;char ch4 !;System.out.println(ch1 ch1);System.out.println(ch2 ch2);System.out.println(ch3 ch3);System.out.println(ch4 ch4);}
}整数赋值 用ASCII码的值进行直接赋值 0~127 public class DateType {public static void main(String[] args) {char ch1 33;char ch2 65;char ch3 98;char ch4 100;System.out.println(ch1 ch1);System.out.println(ch2 ch2);System.out.println(ch3 ch3);System.out.println(ch4 ch4);}
}运行结果 用Unicode万国码的值进行直接赋值 0~65535 中文的取值范围是\u4e00(19968) ~ \u9af5(40969) 十六进制十进制 public class DateType {public static void main(String[] args) {char ch1 19968;char ch2 20249;char ch3 20255;char ch4 40869;System.out.println(ch1 ch1);System.out.println(ch2 ch2);System.out.println(ch3 ch3);System.out.println(ch4 ch4);}
}运行结果 进制赋值 用单引号包括十六进制的Unicode字符值要以\u开头 package com.csdn.code.day3;public class DateType {public static void main(String[] args) {char ch1 \u4e00;char ch2 \u4fa2;char ch3 \u5af3;char ch4 \u9af5;System.out.println(ch1 ch1);System.out.println(ch2 ch2);System.out.println(ch3 ch3);System.out.println(ch4 ch4);}
}中文的取值范围是\u4e00 ~ \u9af5 十六进制 运行结果
2.3.2 转义字符
我们刚刚看到的’\u’就是一个转义字符表示一个十六进制数对应的的字符
下面我们来具体了解一下什么是转义字符
转义字符概念用于保存一些特殊符号或者是一些特殊的效果
以下是常用的转义字符
转义字符描述\n换行符\t缩进制表位\ \反斜线\‘单引号‘’双引号
代码举例
public class DateType {public static void main(String[] args) {System.out.println(i\nlove\nyou\n);System.out.println(i\tlove\tyou\t);System.out.println(\\i love you\\);System.out.println(\i love you\);System.out.println(\i love you\);}
}运行结果
2.4 布尔类型
类型字节取值范围描述boolean1字节true/false仅可描述”真“或者”假“
布尔类型不能参加算术运算true表示真false表示假
代码举例
package com.csdn.code.day3;public class DateType {public static void main(String[] args) {boolean a true; //直接对布尔类型的变量赋值boolean b false; //直接赋true or falseint c 20;int d 40;boolean result1 c d; //赋值 最终结果为true or false的表达式boolean result2 c d;System.out.println(a a);System.out.println(b b);System.out.println(result1 result1);System.out.println(result2 result2);}
}
运行结果如下
2.5 String类型
类型取值范围字符编码String任何之间的值Unicode字符编码
String类型是JDK提供的一个类属于引用数据类型任何包括的内容都是字符串
代码举例
package com.csdn.code.day3;public class DateType {public static void main(String[] args) {String str1 I am ?0 o O;String str2 I am 21 years old\n;System.out.println(str1);System.out.print(str2); // \n和println()方法都有换行的效果选其一即可}
}运行结果