Java入门

前面停更了很长时间,事情有点多又有点忙,也不知道该写一些什么东西,前面C语言的东西呢,以后可能就不谈了,以后转到Java方向了,所以呢,以后开始学习Java。Java呢其实是比C/C++要简单一点的,关注点大多在应用层,这一点也比较符合我性格。其他的就不多解释了,进入正题。

Java简介

什么历史啊,背景啊这些我就不再多说了,我觉得讨论这个没有意义,等以后真正的变成大佬了再回过头来讨论它的辉煌历史吧。这里说几个比较重要的点。
前几天我在看点的时候看到一篇有关于讨论Java的帖子,就好奇点进去看了一下,不看不知道是一看吓一跳啊。在这里插入图片描述
这段话啊,我也没读懂什么意思,我也不知道这个作者想要表达个什么意思,咱也不敢说,咱也不敢问。反正呢,我只知道Java是一种平台无关性的编程语言,是一种静态的,强数据类型的(这一点在下文会介绍)语言。所以说啊,这种帖子大家看看就好。

HelloWorld

基本上呢所有的编程语言一开始讲都会讲这个hello world,咱们为了继承这个优良传统也从这来。
HelloWorld.java

public class HelloWorld{//class后面的名字要跟文件名一致(很重要)
	public static void main(String[] args){
		//这个结构暂时不理解没关系,背会,现阶段的Java程序都得这么写
		System.out.println("Hello world ! ");//输出hello world
	}
}

简单解释一下,每一个Java程序都必须有至少一个类(class),class后面跟的叫做类名。下面的main叫做主方法,是程序入口,相当于C语言中的main函数,只不过叫法不一样,本质上都一样。

数据类型

Java的内置数据类型一共分四类八种

1)整型

a)byte,占一个字节,即八个比特位,可表示范围-128~127。
b)short,占两个字节,可表示范围-32768~32767。
c)int,四个字节,可表示范围-231~231-1。
d)long,八个字节,可表示范围-263~263-1。
需要注意的是Java中没有有符号数与无符号数这样的概念,所有的数都是有符号数,这一点与C语言不同。

2)浮点型

a)float,四个字节
b)double,双精度浮点型,八个字节
以上这些呢都有其内置类型的包装类,方便的话可以直接用
可以去Java的API文档查看具体用法。

public class TypeData{
	public static void main(String[] args){
		//整型
		//byte
		byte maxByte=Byte.MAX_VALUE;
		System.out.println("maxByte:"+maxByte);
		byte minByte=Byte.MIN_VALUE;
		System.out.println("minByte:"+minByte);
		//short
		short maxShort=Short.MAX_VALUE;
		System.out.println("maxShort:"+maxShort);
		short minShort=Short.MIN_VALUE;
		System.out.println("minShort:"+minShort);
		//int
		int maxInt=Integer.MAX_VALUE;
		System.out.println("maxInt:"+maxInt);
		int minInt=Integer.MIN_VALUE;
		System.out.println("minInt:"+minInt);
		//long
		long maxLong=Long.MAX_VALUE;
		System.out.println("maxLong:"+maxLong);
		long minLong=Long.MIN_VALUE;
		System.out.println("minLong:"+minLong);
		//浮点型
		//float
		float maxFloat=Float.MAX_VALUE;
		float minFloat=Float.MIN_VALUE;
		System.out.println("maxFloat:"+maxFloat);
		System.out.println("minFloat:"+minFloat);
		//double
		double maxDouble=Double.MAX_VALUE;
		double minDouble=Double.MIN_VALUE;
		System.out.println("maxDouble:"+maxDouble);
		System.out.println("minDouble:"+minDouble);
		
		
		
	}
}
3)字符型

char,Java中的char占两个字节,所能表示的字符更多,支持ASCII和Unicode以及更多。

4)布尔型

boolean,只有两个值,true表示真,false表示假。
所谓静态数据类型呢也就是说一个变量定义好以后其数据类型是不能再改变的,也就是说一个变量,定义好以后它的数据类型是确定的且不能再变,比如一个int类型的变量被定义好以后在它的整个生命周期内它都是int类型的不能改变,而动态数据类型正好相反。同一个变量一会是int类型,一会又是char类型,甚至还可能是String类型。
而强数据类型呢是指不同的数据类型之间是不能混用的,比如

char temp = 'a';
short x = 20;
char test = x + temp;//这样直接相加是错的
char s = 'A';
char input = s + x;//这一点跟C语言不同,两个char也是不可以直接相加的
s = 65;//这样写没问题,是把ASCII对应的值赋值给s
s = s + 3;//这样写就不行
//比较有意思的是输出的时候他们可以相加
System.out.println(x + temp);//即使类型不同
System.out.println(s + x);
System.out.println(s + 3);

值得注意的是,从小数据转到大数据是允许的,但是反之不行,什么意思呢,就是比如:

byte a = 10;
short b = 20;
int c = 30;
long d = a + b + c;
System.out.println(d);

这样写可以,但是反过来就不行

long a = 20L;//一般在数字后面跟一个L表示这是long型的,同样也可以加小写的l,但是容易跟数字1混淆。
int b = a;//这样写编译直接报错,除非加强制类型转换,

另外就是C语言中用0表示假,非0表示真,但是Java里真假只能用true和false来表示,不同数据类型之间不能互相转化(加强转也没用)。也就是说Java会有更严格的数据类型检查。还有就是在一些条件判断语句之中(if/while)条件表达式必须是布尔类型的,不能是其他类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值