大数据--javase基础--day1
Posted 小孩不要怕
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据--javase基础--day1相关的知识,希望对你有一定的参考价值。
源文件的编写和编译
源文件的编写
(1)源文件名必须与公共类名保持一致。
(2)main方法写在类中
(3)代码在main方法中
源文件的编译
Step1:cmd进到你存源文件的目录下
Step2:利用javac+源文件名.java,进行编译,运行后会生成一个源文件生成的二进制类文件.class。如:javac HelloWorld.java
Step3:利用java +类文件名,让计算机对其运行。(注意:此时不需要类文件的后缀名)
源文件注意事项
- java源文件中只能由一个公共类,但可以有多个普通类,数量不受控制,且公共类类名必须与源文件名一致。建议一个源文件只写一个类。
- 若一个源文件中有多个类,则在编译后会生成多个.class字节码文件
- main方法并不是必须在公共类中,但习惯上都写在公共类中
- java源文件名虽不区分大小写,但是最好区分大小写,与公共public类名一致,目的:便于代码维护
代码
代码注释
- 单行注释------// 单行注释
- 多行注释------/* 多行注释 */
- 文档注释------//** 文档注释,可以注释多行代码,并且可以生成API文档 */
代码输出
- 输出换行:System.out.println()
- 输出不换行:System.out.print()
- 连接输出
关键字
在java中已经被赋予独特含义,eg:for 、else等。一共有50个。
标识符
命名规则
- 只能用字母、数字、下划线和美元符号$组成。
- 不能用java关键字和特殊值
- 不能以数字开头
- 不能包含空格
- 严格区分大小写
命名规范
- 见名知意
- 类名、接口名等:每个单词的首字母都大写,形式:XxxYyyZzz,如:HelloWorld
- 变量、方法名等:从第二个单词开始首字母大写,其余字母小写。形式:xxxYyyZzz,如:age、bookName
- 包名等:每一个单词都小写,单词之间使用点分割,形式:xxx.yyy.zzz。如:java.lang
- 常量名等:每一个单词都大写,单词之间使用下划线分割,形式:XXX_YYY_ZZZ,如:MAX_VALUE, PI
数据类型
- 基本数据类型:整数、浮点数、字符(char)、布尔(boolean)。
整型:字节类型(byte)、短整型(short)、整型(int)、长整型(long)
浮点型:单精度浮点型(float)、双精度浮点型(double) - 引用数据类型:类(class)、数组([])、接口(interface)、枚举(enum)、注解(@interface)
常量值
定义:在程序执行过程中,其值不会发生改变。
- 整数常量值:超过int范围的必须加L或小写L
- 小数常量值:无论多少,不加F则都是double类型。要表示float类型的话则必须加F或小写F。如:1.34, 1.34f
- char字符常量值:必须使用单引号
- String字符串常量值:必须使用双引号
强制类型转换和自动类型转换
自动类型转换
定义:将取值范围小的类型自动提升为取值范围大的类型。
取值范围大小关系图:
注意:除了char只能先转换到int,然后在转换为其他类型外,其他数据类型可以直接转换为其他类型,比如:byte类型可直接自动转换为float类型。
注意:当byte、short、char数据类型进行算术运算时,会自动按照int类型处理。
强制类型转换
- 定义:将取值范围大的类型强制转换成取值范围小的数据类型。
- 转换格式:变量名= (数据类型)被强制转换的数据值
- 将double转换为int类型,把存储范围较大的值赋给存储范围较小的值时进行类型转换可能会损失精度或者溢出。
- 当某个值要提升数据类型时,也可以使用强制数据类型转换(该情况下,强制类型转换不会有风险)。
结果为0.5,若没有进行强制类型转换则结果为0.0,因为此处强转的为i,转换为了1.0/2=0.5
基本数据类型与字符串类型的转换
任何数据类型与String类型进行+运算时,结果一定是String类型,若与String类型优先级一致则从左往右依次进行处理。
String类型不能通过强制类型转换,转为其他类型。
变量
定义:在程序执行过程中,其值可以发生改变的量。
作用:存储数据,代表内存的一块存储区域,且这块内存中的值是可以改变的
变量必须先声明变量的数据类型在利用赋值号进行赋值,如:String = “李白”;
使用变量时,变量必须有初始值
变量声明:数据类型+变量名
运算符
- 一共有38个运算符,按照操作数的个数分为一元(单目)运算符、二元(双目)运算符、三元运算符。
(1)相同的操作数记为一个操作数,如:++为一元运算符;
(2)(条件表达式)?结果1:结果2 为三元运算符;
(3)除一元运算符和三元运算符之外的为二元运算符。
运算符分类
算术运算符:+、-、、/、%、++、–
赋值运算符:=、+=、-=、=、/=、%=、>>=、<<=、>>>=、&=、|=、^=等
关系(比较)运算符:>、>=、<、<=、==、!=
逻辑运算符:&、|、^、!、&&、||
条件运算符:(条件表达式)?结果1:结果2
位运算符:&、|、^、~、<<、>>、>>>
Lambda运算符:->
部分运算符解释
算术运算符
*、/、%优先级大于+、-。而++和–高于所有的一元运算符。
a++:a先运算后自增1;++a:a先自增1后运算。
关系运算符
所含的六个运算符平级,运算结果为True或False
条件运算符
条件判断结果为true,则赋值结果1给变量;反之则赋值结果2给变量。
赋值运算符
会自动进行类型转换,而不需要进行强制性类型转换。
逻辑运算符
位运算符
只能运算整数的二进制形式z’z’x’x
正数的原码、反码和补码都一样;负数的原码、反码和补码不一样。
注意:如何区分&、|、^是逻辑运算符还是位运算符?
若操作数是布尔(boolean)类型则为逻辑运算符,反之则为位运算符
以上是关于大数据--javase基础--day1的主要内容,如果未能解决你的问题,请参考以下文章