Java初学·笔记2
变量和数据类型
1. 掌握使用IDE构建普通的Java项目
IDE:集成开发工具/环境
开发Java的主流IDE:
- eclipse 开源 由Eclipse软件基金会(不以盈利为目的)进行维护。
- myeclipse 闭源 它是基于开源的Eclipse衍生出的,添加了更加适合Java EE开发的相关套件。
- IDEA 闭源 在目前已经几乎领先了Eclipse。
- netbeans 它是apache软件基金会开发
- visual studio
- …
以后我们Java要抱的大腿:apache基金会 Spring公司 eclipse基金会 谷歌 阿里巴巴…
Eclipse基本使用和配置
- 解压安装到develop文件夹之后
- 双击启动 选择一个合适的位置作为工作空间(workspace)
- 进入主界面切换为"Java"开发模式(可以随时右键重置模式窗口 reset)
- 通过"window菜单" -> preference(首选项)
- 搜索workspace -> 字符编码:UTF-8
- 搜索fonts -> 修改字体和大小等
Eclipse中是以项目/工程(project)为基本单位的。
在左侧空白处右键 new -> Java Project 填好基本信息即可完成创建
创建完成之后,在工程中会有两块组成:JRE(必须要有) src目录(在内部编写源代码)
另外工作空间也会存在以工程名为单位的项目文件夹,里面的配置内容不要删除。例如.settings bin .classpath .project
在src目录下创建源代码(右键new --> )
- 先创建包(package)组织 包名必须是公司域名的倒叙(必须小写)。 例如:我在课工场 则包名为cn.kgc.xxxx,我如果在腾讯:com.tencent.xxx。
- 在包下面再创建类Class(昨天的东西),在其中指定好类名即可完成创建。
- 继续编写完善你的Java代码,保存之后,可以右键 run as -> Java Application来运行。
2. 掌握变量和常量的使用
**变量:**变化的量。
补充:RAM ROM
**RAM:**随机存取存储器(随机存储器) 平时你买电脑手机都要买大内存!8G 10G 因为好像程序可以开多个还不卡。 用于程序运行时临时数据
的存储。 当断电或者未Ctrl+S时 会造成数据丢失。 因为它的存储和读取速度非常快!
**ROM:**只读存储器 你的机械硬盘 平时的资料都是会存储在这之上的,它可以持久存储 不会因为断电而丢失数据。
变量就是Java程序在运行时,在RAM中临时存储数据的一种方式。
在内存中存储变量,就可以理解为去住宾馆。
宾馆的房间 变量
宾馆的房间号 变量名
房间客人 变量值
房间类型 变量的数据类型
变量组成的三要素
变量名
变量值
变量的数据类型
了解变量和常量的命名规范
变量名称的规范:
Java中的变量名由数字、字母、下划线或者$符号组成的,数字不能开头。
变量名不能使用关键字或保留字。
**关键字:**在语言中有特别的含义的单词! 在IDE中一般都会变色。
**保留字:**goto … 还未有特殊含义,但是未来可能会被赋予特殊含义的单词。
变量名应该见名知义。 例如:存储姓名信息:name 存储年龄信息:age
变量名应该采用驼峰命名法(小驼峰),首字母小写,如果有多个单词,后面的每个单词首字母要大写。
用户密码:userpassword -> userPassword
因为Java变量名支持下划线_ 所以衍生出一种下划线命名法:user_password
变量名不应该为拼音+英文形式,要么全拼音要么全英文。
(X)myXingMing
常量名称的规范:
当在程序运行中,需要有一些值是固定不变时,那么可以给变量添加final修饰符,这时候它将变为常量。
常量只能赋值一次。
常量为了方便和变量区分:要求除了变量的那些规范外!应该保证常量的所有字母都要大写!如果有多个单词可以采用_连接。
MY_NAME
掌握Java中的数据类型
Java中按照变量值的类型划分:
**按照数值和非数值划分:****数值:**(整数型) byte short `int` long (浮点型)float `double` **非数值:**char('男' '开' 'a') boolean布尔类型(true / false) `S`tring("xxx" "12132ab")
(了解)**按照基本数据类型和引用数据类型来划分:****基本数据类型:**byte short int long float double char boolean (在IDE还会变色)**引用数据类型:**数组、类(String是一个类)、接口、枚举...
掌握数据类型转换
当都是相同类型(数值类型),如果出现了取值范围大的 转换为 取值范围小的 或者反之的情况。
byte -> short -> int -> long -> float ->double
数据类型转换:
**自动类型转换:**取值范围小的可以自动转换为取值范围大的。 double num = 10;**强制类型转换:**(强转)取值范围大的需要强制转换为取值范围小的,但是它会损失精度,如果没有特别情况,不要强转。
3. 掌握键盘录入的使用
4. 掌握常见的运算符
赋值运算符
= 不叫等号/相等 编程中是赋值的含义。
见到它,你就应该从右往左读。
int num = 10; // 将10赋值给了int类型的num变量
double nnum2 = num; // 将num变量的值赋值给了double类型的num2
算术运算符
+ - * / % ++ --
复合算术运算符:+= -= *= /= %=
关系运算符
> < >= <= != ==(小心和=的区别)
逻辑运算符
&& 并且 (与)
|| (或者)或
! 非(取反)
// 判断a是否 大于等于5 并且小于等于10
5 <= a <= 10
a >= 5 && a <= 10// 大于等于5 或者 小于等于10
a >= 5 || a <= 10
三目/元运算符
java
public class Demo6 {
public static void main(String[] args) {// 史浩然相亲// 定义变量来存储史浩然是否有房// 标识变量来存储 1有房 0没房int hasHouse = 1;// 相亲结果// 条件表达式(boolean) ? 成立 : 不成立;String result = (hasHouse == 1) ? "牵手成功" : "孤独转身";System.out.println(result);
}
}
#### 运算符优先级++和--优先级别高其他的优先级 你就记住想让谁先执行 就给加()即可。
Java初学·笔记2相关推荐
- java后端系统学习总结 01_java第五版 java初学笔记,由浅入深
文章目录 基本数据类型.引用数据类型(数组.类.接口->默认值都为null) **什么是引用** 堆.栈.引用变量: 数据类型详细介绍 整型(byte.short.int.long) 浮点型(f ...
- Java初学笔记——22.Case15_和女友对答
package 控制流程;import java.util.Scanner;public class Case15_和女友对答 { public static void main(String[] a ...
- Java初学笔记——18.Case12_个税计算
package 控制流程;import java.text.NumberFormat; import java.util.Scanner;//已知://工资个税的计算公式为:应纳税额 = (工资薪金所 ...
- Java基类共同属性设置_多选择基类的访问属性-Java初学笔记
多选择基类的访问属性 你现在知道在定义类的访间属性时可用的选择项,你希望使用这些类定义子类.你知道在类继承上这些属性所具有的效果,但是你如何决定到底应该使用哪一个呢? 这里没有死板和现成的规则,你选择 ...
- JAVA初学笔记重点——子类与继承
1.关键词:extends 2.格式:class 子类名 extends 父类名{ ...... } 3.每个类(除Object类)有且只有一个父类,一个类可以有多个或零个子类. 4.子类和父类在同一 ...
- Java初学笔记——4.AA制
package AA制; //假设菜的价格都是整数,定义3个int表示菜的价格 //一共三个人一起吃饭,他们决定AA制 //请帮他们算出每个人付多少钱 public class Case1_AA制 { ...
- 一起初学java,笔记记录的第五天:数组、排序和查找
一起初学java,笔记记录的第五天:数组.排序和查找 适用于初学java者 这个首先指出本文中图片和资源来自**韩顺平**老师,感谢老师做的无私奉献的教学! 1. 数组介绍 数组可以存放多个同一类型的 ...
- java基础入门传智播客 源码_Java-_2020年版Java零基础视频教程(Java 0基础,Java初学入门)魔鬼讲师老杜出品...
不会闲聊!!!不会扯淡!!!小UP只会分享与Java相关的学习资源 还记得那年带你Java入门的一声"吼"吗? B站目前播放量已经快到450多万播放量的Java零基础教程的创作者& ...
- Lucene.Net 初学笔记 - 索引
上次随笔写的Lucene.Net 初学笔记 - 介绍,有许多前辈让我知道了Lucene.Net已经不再更新,最后的版本写到2.9.2,不过只更新在svn上.我上次下载是官方正式发布的版本,只有2.0. ...
最新文章
- OTP gen_server
- mac photoshop install无法安装_MAC安装应用报错:无法打开或文件损坏的处理方法~...
- mysql排序空放后面_python对mysql数据库的增删改查
- Data Guard出现gap sequence修复
- 前端学习(2572):如何使用vuex
- 最大化BEA WebLogic Cluster的性能、可用性和安全
- ubuntu16.04(其他版本也可)批量修改图片名---shell编程
- python飞机大战游戏高级_05.python实现飞机大战游戏
- python3librequest_python3.x學習之urilib.request簡單學習
- centos 创建mysql8数据库给django连接
- 解析docker中的环境变量使用和常见问题解决
- tensorflow之get_shape
- windows环境下的YOLO3入门,及opencv344配置
- linux虚拟usbgs0,USB模拟串口
- OpenRefine 开启远程访问模式
- [译] 海量视频时代下的内容发现之旅
- 云计算OpenStack环境搭建
- 实现pygame自定义鼠标外形
- Cocoa Touch Layer
- KDD 2020(五) | 基于多源异构信息整合的视频标题生成模型(作者带你读论文)...