java钓鱼_Java学习笔记(一)

本文探讨Java与C/C++的相似点,如基本数据类型、字面值和类型转换,同时强调IDE选择(Idea vs Eclipse),并指出命名规则和表达式块的共同点。对于初学者,理解这些相似性有助于C++背景者快速上手Java。
摘要由CSDN通过智能技术生成

论 Java 与 C 和 C++ 的相似性(有C++或C 基础的 学 Java 更轻松的说)

一,工具的选择(暂时只用过 idea 和 eclipse)

两者比较来说,更喜欢用 idea,因为其风格与pycharm大同小异,比较习惯上手,当然两者并没有什么优劣之分,根据个人实际情况即可

界面截图

idea

733fa924435342662283167a002eb05f.png

eclipse

34f153b01aea39f9cad911376b0ffb53.png

注意点:

使用 idea 需要 在此之前 下载好 jdk

使用 eclipse 则 可以不用(后期的使用需不需要,暂时还不清楚,对于刚入门的萌新==> Me 来说)

二, Java基本数据类型

这 和 C++ 很类似,但是也有许多不同,所以这里多写不同点或增加点

整型在原有的 int float double long 基础上增加了 byte

byte 值范围为(-127 ~ 128)

其值的范围和 C中的 int 挺像的说

float类型的创建则必须在其值后 + f , 原因:一般小数值均默认为double类型的说

float f = 5.234f;

字符型 char, 但是其的格式多了许多束缚

char类型用于存放一个字符,值必须用单引号 ' 表示(双引号表示字符串),其长度与 short 一样,同为 16位

如果用 char型 创建字符串则会编译错误,且只能存放一个字符,否则也编译错误

bf5006db013ddb03eab54d1e561de455.png

正常格式

char c = '中';

字符串类型 String, 这里就不详述了,和 C++中的 String 类 挺像

String str = "Hello World";

三,字面值以及类型转换

字面值 即 给基本类型的变量赋值的方式

3.1 整数字面值

当以l或者L结尾的时候,一个整数字面值是long类型,否则就是int类型。 建议使用大写的L而非小写的l,因为容易和1混淆。

byte,short,int和long的值都可以通过int类型的字面值来创建。整数的字面值可以用如下四种进制来表示:

十进制: 基 10, 包含从0-9的数字,平常用的就是这种

十六进制: 基 16, 包含从0-9的数字,和从A-F的字母。

八进制: 基 8, 包含从0-7的数字

二进制: 基 2, 包含0和1。(从 JAVA7开始就可以创建 二进制的字面值了)

1 long val = 26L; //以L结尾的字面值表示long型

2 int decVal = 26; //默认是int类型

3 int hexVal = 0x1a; //16进制

4 int oxVal = 032; //8进制

5 int binVal = 0b11010; //2进制6 //写的时候有点带Python的习惯,比如注释 空格 =-=

3.2 浮点数字面值

当以 f 或者 F 结尾的时候表示一个 float类型,否则就是 double类型(以 d 或 D结尾时,写不写都行,即默认为double类型)

浮点数还可以用 E 或者 e表示(科学计数法)

1 float f1 = 123.4F; //以F结尾的字面值表示float类型

2 double d1 = 123.4; //默认就是double类型

3 double d2 = 1.234e2; //科学计数法表示double

3.3 转义字符(和 C++ 一样,这里不多叙述,代码示例即可)

1 char tab = '\t'; //回车

2 char newLine = '\n'; //换行

3 char carriageReturn = '\r'; //制表符

4 char doubleQuote = '\"'; //双引号

5 char singleQuote = '\''; //单引号

6 char backslash = '\\'; //反斜杠

数据类型转换(顾名思义,当然这和 C++中依旧有几层相似滴)

426dc8b61561770e6f3cc0c2d427090a.png

3.4 char的特殊性

虽然 short 与 char 同为 16位,但是 两者间进行转换仍然需要强制类型转换

1 char w = 'A';2 short q = 80;3 //虽然short 和 char 都是16位,长度是一样的4 //但是彼此之间,依然需要进行强制转换

5 w = (char)q;

3.5  直接转换(低精度向高精度转换, 其意思是=>转是可以转的,但是不对转换之后的值负责。 风险自担,后果自负)

上图中 -> 即低精度向高精度的顺序

3.6 强制类型转换(高精度向低精度转换)

如果 前者值 大于 后者类型的最大值,则需要同转换为二进制,然后根据低精度的位数进行切割

3.7 四则运算过程中的自动转换

如果有任何运算单元的长度超过int,那么运算结果就按照最长的长度计算

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

1 int a = 5;2 long b = 6;3 a+b -> 结果类型是long

View Code

如果任何运算单元的长度都不超过int,那么运算结果就按照int来计算

8f900a89c6347c561fdf2122f13be562.png

961ddebeb323a10fe0623af514929fc1.png

1 byte a = 1;2 byte b= 2;3 a+b -> int 类型

View Code

如果是两个不同类型的值相加,好比

long l = 12L;int i = 3;//两者相加类型为 long, 若还需要使之成为 int 类型,则需要强转

int j = (int)(l + i);

四,命名规则

变量命名 只能使用 字母,数字,$,_

变量的第一个字符 只能使用字母 $ _ , 不能使用数字

使用完整的单词命名,而非缩写

不能使用关键字,但是可以包含关键字

中文也是可以命名变量的,但是在实际工作中别这么做的说

五,作用域

和其他语言一样,就近原则,作用域范围越小,其优先级越高

六,final

final 修饰一个变量,其作用 和 static 相同

七,表达式与块

与 C++ 类似

以 ; 结尾的一段代码,即为一个表达式

区别

; 单独一行也为一个表达式

从{开始 到对应的}结束,即一个块

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值