今日分享开始啦,请大家多多指教~

Java是一种风行的编程语言,创立于1995年;运行Java的设施超过30亿台。Java能够在不同的平台上运行(Windows、Mac、Linux、Raspberry Pi等)。它是世界上最风行的编程语言之一;学习Java的基础知识,从无到有!

正文

平时咱们编写代码,在代码量比拟少的时候,咱们还能够看懂本人写的,然而当我的项目构造一旦简单起来,咱们就须要用到一个正文了,正文就相似于咱们上学时候写的笔记,咱们看着笔记就晓得本人写的什么货色了!在程序中也是如此。咱们来看一下Java中的正文怎么写,看以下代码:

/** @Description HelloWorld类* @Author Diamond 狂神QQ:24736743**/public class HelloWorld {/*这是咱们Java程序的主入口,main办法也是程序的主线程。*/public static void main(String[] args) { //输入HelloWorld!System.out.println("Hello,World!"); } }

正文并不会被执行,是给咱们写代码的人看的,书写正文是一个十分好的习惯,在很多大公司都是强制要求各位去进行编写正文!比方,咱们的BAT三大巨头等等.

Java中的正文有三种:
单行正文:只能正文以后行,以//开始,直到行完结

1 //输入HelloWorld!

多行正文:正文一段文字,以/ /完结!

1 /*
2 这是咱们Java程序的主入口,
3 main办法也是程序的主线程。
4 */

文档正文:用于生产API文档,配合JavaDoc。

【注】文档正文咱们当初只作为理解,在学习JavaDoc时候咱们会具体给大家说,目前晓得有这样的正文就好。

1 /*
2 * @Description HelloWorld类
3 * @Author Diamond 狂神QQ:24736743
4 **/

倡议平时写代码肯定要留神正文的规范性,一个好的程序员,肯定是有十分良好的编码习惯的,我心愿大家可能从小事开始锤炼本人的行为习惯!

标识符

每个人从出世开始就有一个名字,咋们生存中的所有事物也都有名字,这名字是谁规定呢?答复是:造物主,谁生产进去的谁规定名字,在咱们的程序中也不例外。

咱们作为造物主,须要给所有的货色给上一个名字,比方咱们的HelloWorld程序:
HelloWorld是类名,也是咱们的文件名。它后面的 public class是关键字,不过是搞Java那群人曾经定义好的有特殊作用的,上面的每一个代码都有本人的意思和名字对吧,就是用来作辨别!和咱们的名字一样,拿来被叫或者称说的,程序所有都源自于生存,肯定要把学程序和生存中的所有分割起来,你会发现这一切都是非亲非故的。
咱们来看看有哪些是Java本人定义好的关键字呢?

这些看起来十分的多,然而随着咱们当前的学习咱们都会用到,所以齐全不必放心本人 看不懂,这些被Java曾经规定的关键字,咱们本人就不能拿它当做名字了!
Java 所有的组成部分都须要名字。类名、变量名以及办法名都被称为标识符。

咱们本人起名字有哪些要求呢?
示意类名的标识符用大写字母开始。

1 如:Man, GoodMan

示意办法和变量的标识符用小写字母开始,前面的描述性词以大写开始。

1 如:eat(),eatFood()
2 //驼峰命名法

对于 Java 标识符,有以下几点须要留神:
所有的标识符都应该以字母(A-Z 或者 a-z),美元符($)、或者下划线(_)开始
首字符之后能够是字母(A-Z 或者 a-z),美元符($)、下划线(_)或数字的任何字符组合,不能应用关键字作为变量名或办法名。
标识符是大小写敏感的
非法标识符举例:age、$salary、_value、__1_value
非法标识符举例:123abc、-salary、#abc

【 JAVA不采纳通常语言应用的ASCII字符集,而是采纳unicode这样的规范的国内字符集。因而,这里的字母的含意:能够示意英文、汉字等等。】
【能够应用中文命名,然而个别不倡议这样去应用,也不倡议应用拼音,很Low】

演示:非法标识符以及不非法标识符

数据类型

Java是一种强类型语言,每个变量都必须申明其类型。

1、强弱类型语言
说到强类型语言,那什么是强类型语言呢?
强类型语言也称为强类型定义语言。要求变量的应用要严格符合规定,所有变量都必须先定义后能力应用。

Java、.NET、C++等都是强制类型定义的。也就是说,一旦一个变量被指定了某个数据类型,如果不通过转换,那么它就永远是这个数据类型了。

安全性高,运行效率绝对较慢,鱼和熊掌不可兼得!强类型定义语言在速度上可能略逊色于弱类型定义语言,然而强类型定义语言带来的严谨性可能无效的防止许多谬误。与其绝对应的是弱类型语言。

弱类型语言也称为弱类型定义语言。与强类型定义相同。像vb,php等就属于弱类型语言·在VBScript中,能够将字符串‘12’和整数3进行连贯失去字符串‘123’,也能够把它看成整数123,而不须要显示转换。是不是非常的轻易,咱们Java就不是这样的。但其实它们的类型没有扭转,VB只是在判断出一个表达式含有不同类型的变量之后,主动在这些变量前加了一个clong()或(int)()这样的转换函数而已。能做到这一点其实是归功于VB的编译器的智能化而已,这并非是VB语言自身的短处或短处。

好了,到这里,咱们应该对强弱类型语言有了肯定的理解!咱们持续回到数据类型这个话题.

2、数据类型
Java的数据类型分为两大类:根本类型(primitive type)和援用类型 (reference type)
【注:援用数据类型的大小对立为4个字节,记录的是其援用对象的地址!】

如果你看到这一堆头疼的话,没关系,不必记,JDK中类型对应的包装类都帮忙写好了,咱们须要时候能够间接看到!能够把以下代码拷贝进行查看后果:

public static void main(String[] args) {// byteSystem.out.println("根本类型:byte 二进制位数:" + Byte.SIZE);System.out.println("包装类:java.lang.Byte");System.out.println("最小值:Byte.MIN_VALUE=" + Byte.MIN_VALUE);System.out.println("最大值:Byte.MAX_VALUE=" + Byte.MAX_VALUE);System.out.println();// short System.out.println("根本类型:short 二进制位数:" + Short.SIZE);System.out.println("包装类:java.lang.Short");System.out.println("最小值:Short.MIN_VALUE=" + Short.MIN_VALUE);System.out.println("最大值:Short.MAX_VALUE=" + Short.MAX_VALUE);System.out.println();// intSystem.out.println("根本类型:int 二进制位数:" + Integer.SIZE);System.out.println("包装类:java.lang.Integer");System.out.println("最小值:Integer.MIN_VALUE=" + Integer.MIN_VALUE);System.out.println("最大值:Integer.MAX_VALUE=" + Integer.MAX_VALUE);System.out.println(); // longSystem.out.println("根本类型:long 二进制位数:" + Long.SIZE);System.out.println("包装类:java.lang.Long");System.out.println("最小值:Long.MIN_VALUE=" + Long.MIN_VALUE);System.out.println("最大值:Long.MAX_VALUE=" + Long.MAX_VALUE);System.out.println(); // floatSystem.out.println("根本类型:float 二进制位数:" + Float.SIZE);System.out.println("包装类:java.lang.Float");System.out.println("最小值:Float.MIN_VALUE=" + Float.MIN_VALUE);System.out.println("最大值:Float.MAX_VALUE=" + Float.MAX_VALUE);System.out.println();// doubleSystem.out.println("根本类型:double 二进制位数:" + Double.SIZE);}System.out.println("包装类:java.lang.Double");System.out.println("最小值:Double.MIN_VALUE=" + Double.MIN_VALUE);System.out.println("最大值:Double.MAX_VALUE=" + Double.MAX_VALUE);System.out.println();// charSystem.out.println("根本类型:char 二进制位数:" + Character.SIZE);System.out.println("包装类:java.lang.Character");// 以数值模式而不是字符模式将Character.MIN_VALUE输入到控制台System.out.println("最小值:Character.MIN_VALUE="+ (int) Character.MIN_VALUE);// 以数值模式而不是字符模式将Character.MAX_VALUE输入到控制台System.out.println("最大值:Character.MAX_VALUE="+ (int) Character.MAX_VALUE);咱们理解了这些常识后,咱们本人定义一些变量来看!public static void main(String[] args) {//整型int i1=100;//长整型long i2=998877665544332211L;//短整型short i3=235;//浮点型double d1=3.5; //双精度double d2=3;float f1=(float)3.5; //单精度float f2=3.5f; //单精度//布尔类型 boolean true真/false假boolean isPass=true;boolean isOk=false;boolean isBig=5>8;}if(isPass){System.out.println("通过了");}else{System.out.println("未通过");}//单字符char f='女';char m='男';

【Java语言的整型常数默认为int型,浮点数默认是Double】

3、整型拓展
在咱们计算机中存在很多进制问题,十进制,八进制,十六进制等等的问题,他们怎么示意呢?

十进制整数,如:99, -500, 0。
八进制整数,要求以 0 结尾,如:015。
八进制整数,要求以 0 结尾,如:015。

4、浮点型拓展
【金融面试问:银行金融业务用什么类型示意?】

浮点类型float, double的数据不适宜在不容许舍入误差的金融计算畛域。
如果须要进行不产生舍入误差的准确数字计算,须要应用BigDecimal类。

次要理由:
因为字长无限,浮点数可能准确示意的数是无限的,因此也是离散的。浮点数个别都存在舍入误差,很多数字无奈准确示意,其后果只能是靠近,但不等于;二进制浮点数不能准确的示意0.1,0.01,0.001这样10的负次幂。并不是所有的小数都能能够准确的用二进制浮点数示意。

最好完全避免应用浮点数比拟 !

大数值:Java.math上面的两个有用的类:BigInteger和BigDecimal,这两个类能够解决任意长度的数值。BigInteger实现了任意精度的整数运算。BigDecimal实现了任意精度的浮点运算。

浮点数应用总结:

  1. 默认是double
  2. 浮点数存在舍入误差,很多数字不能准确示意。如果须要进行不产生舍入误差的准确数字计算,须要应用BigDecimal类。
  3. 防止比拟中应用浮点数
    5、字符型拓展
    单引号用来示意字符常量。例如‘A’是一个字符,它与“A”是不同的,“A”示意一个字符串。
    char 类型用来示意在Unicode编码表中的字符。
    Unicode编码被设计用来解决各种语言的所有文字,它占2个字节,可容许有65536个字符;

【科普:2字节=16位 2的16次方=65536,咱们用的Excel原来就只有这么多行,并不是有限的】

Unicode具备从0到65535之间的编码,他们通常用从’u0000’到’uFFFF’之间的十六进制值来示意(前缀为u示意Unicode)
Java 语言中还容许应用转义字符 ‘’ 来将其后的字符转变为其它的含意,有如下罕用转义字符:

6、布尔型拓展
boolean类型(一位,不是一个字节),就是0|1
boolean类型有两个值,true和false,不能够 0 或非 0 的整数代替 true 和 false ,这点和C语言不同。
boolean 类型用来判断逻辑条件,个别用于程序流程管制。

类型转换

因为Java是强类型语言,所以要进行有些运算的时候的,须要用到类型转换。
整型、实型(常量)、字符型数据能够混合运算。

运算中,不同类型的数据先转化为同一类型,而后进行运算。
转换从低级到高级(依据容量来看)。

数据类型转换必须满足如下规定:
不能对boolean类型进行类型转换。
不能把对象类型转换成不相干类的对象。
在把容量大的类型转换为容量小的类型时必须应用强制类型转换。
转换过程中可能导致溢出或损失精度,例如:

因为 byte 类型是 8 位,最大值为127,所以当 int 强制转换为 byte 类型时,值 128 时候就会导致溢出。

浮点数到整数的转换是通过舍弃小数失去,而不是四舍五入,例如:

小结
今日次要讲述了正文,标识符,数据类型,类型转换,这几种根底知识点;从java入门根底开始学习,越简略的货色,越不要疏忽,细节影响成败!

今日份分享已完结,请大家多多包涵和指导!