Java中加二怎么打_Java(一)(二)
1.JDK JRE JVM三者的关系:
JDK是开发者工具 JRE是运行环境,包含我们开发时所需要的类库 JVM是虚拟机 它是一个载体 平台
JDK -> JRE -> JVM (包含关系,在安装时安装好了JDK就可以了)
2.JDK重要版本:
JDK1.5 里程碑 JDK7 8市面上最常见的版本,为最稳定的版本 JDK11 2018年最新版本
3.环境配置:
检测配置成功: CMD中输入java javac 有一长串信息及安装成功 版本检测:java -version
4.Eclipse:
Java package(创建java工程) -> package(创建包) -> class(创建类)
自动编译 运行: 快捷键 Alt + F11 (但是不推荐)
5.Eclipse工作空间的基本配置:
A:行号的显示和隐藏
显示:在代码区域的最左边的空白区域,右键 -- Show Line Numbers即可。
隐藏:把上面的动作再做一次。
B:字体大小及颜色
a:Java代码区域的字体大小和颜色:
window -- Preferences -- General -- Appearance -- Colors And Fonts -- Java -- Java Edit Text Font
b:控制台
window -- Preferences -- General -- Appearance -- Colors And Fonts -- Debug -- Console font
c:其他文件
window -- Preferences -- General -- Appearance -- Colors And Fonts -- Basic -- Text Font
C:窗体给弄乱了,怎么办?
window -- Perspective -- Reset Perspective
window -- Perspective -- save Perspective
D:控制台找不到了,怎么办?
Window--Show View—Console
6.注释:
单行注释: // 多行注释:/**/ 文档注释:/***/
7.关键字:
a:被java赋予特殊含义的单词
b:所有字母为小写,高级文本编辑器中有高亮显示.
8.标识符:
a:以 字母 _(下划线) $ 开头
b:不能以数字开头 关键字不能为标识符
c:中间不能有空格(可以用_(下划线代替))
9.常量:
a:在程序执行期间不可以改变的值
b:整型常量 浮点常量 布尔常量 字符常量(单引号引起的字符) 字符串常量(双引号引起的字符) 空常量
10.变量:
定义的格式 数据类型 变量名 = 初始值;
a:在程序执行过程中.其值在[某个范围内]可以发生改变的数据
b:在程序中创建了一块内存空间(小盒子),用来记录不断发生改变的常量
c:变量一定要有初始值. int a=0; 也可以
变量小问题:
byte,short,int,long,float,double 问题:为什么float占4个字节,long占8个字节,float却比long要大呢?
因为整数和小数,底层的二进制存储结构不同.System.out.println(Float.MAX_VALUE - Long.MAX_VALUE);
总结:
1. 变量名不允许重复
2. 变量[使用之前]必须完成初始化
3. 一条语句可以定义n个变量,但是中间需要通过逗号隔开
11.数据类型:
整数类型:byte 1个字节 shout 2个字节 int 4个字节 long(L) 8个字节
浮点类型:float(F) 4个字节 double 8个字节
布尔类型:true 1个字节 false 1个字节 [ 理论上来说,八分之一个字节就能表示他的大小,但是计算机当中最小的存储单位是字节,所以它应该占1个字节。]
字符串类型:char 2个字节
12.数据的隐式转换:
总结:
1: 将小的数据,给大的数据类型赋值,可以直接赋值。
2. 当小的数据类型和大的数类型做运算的时候,会先将小的,提升为大的之后,再做运算。
举例:
1:
int i = 10; // 4个字节
System.out.println(i);
double d = i; // 8个字节
System.out.println(d);
2:
byte a = 100;
int b = 100;
int c = a + b;
13.数据之间的强制转换:
格式:
(要强转的类型)将要转换的值;
总结:将大的数据,给小的数据赋值时,不能直接赋值,需进行强转
举例:
1:
int i = 100;byte b = (byte)i;
System.out.println(b);
注意:
如果强转的值, 超过了数据类型的取值范围, 那么结果可能会跟我们期望的结果不同(损失精度)
byte b = (byte)130; --> 127
--> -126
14.算术运算符:
算数运算符(自增自减运算符)
赋值运算符
关系运算符[比较运算符]
逻辑运算符
三元运算符[三目运算符]
15.字符和字符串参与加法操作:
System.out.println('a' + 1); // 输出结果? 98
当char类型和整数类型进行运算的时候,实际是 找到底层的ASCII数值,然后进行运算
16.++和--自增自减运算符:
a++: 先用自己去参与运算,再进行自增
++a:先指针,再去参与运算
17.逻辑运算符:
& :无论左边返回的结果是true还是false, 右边都必须执行
&&: 有false则false
| :
|| : 有true则true
^(异或) : 相同为false,不同为true 特点:一个数,被另外一个数,异或两次,该数本身不变。
举例:
实现两个变量的数值交换, 不允许定义三方变量,怎么做?
public static voidmain(String[] args) {int a = 10;int b = 20;
a= a ^ b; //10 ^ 20
b = a ^ b; //10 ^ 20 ^ 20 --> 10
a = a ^ b; //10 ^ 20 ^ 10 --> 20
System.out.println(a);
System.out.println(b);
}
18.三元运算符:
格式: (表达式)?值1:值2;
先执行表达式, true则执行值1 false则执行值2
19.Scanner键盘录入:
1 键盘录入两个数据并求和2
3 public classDemo_Scanner {4 public static voidmain(String[] args) {5 //1. 创建Scanner键盘录入对象(机器)
6 Scanner sc = newScanner(System.in);7
8 System.out.println("请输入两个整数:");9
10 //2. 使用机器的功能,做两次键盘录入
11 int num1 =sc.nextInt();12 int num2 =sc.nextInt();13
14 //3. 求和
15 System.out.println(num1 +num2);16 }17 }
20.if语句:
三种格式:
(1)if(表达式){
语句体
}
(2)if(表达式){
语句体1
}else{
语句体2
}
(3)if(表达式){
语句体1
}else if{
语句体2
}else{
语句体3
}
执行流程:
首先计算比较表达式1看其返回值是true还是false,
如果是true,就执行语句体1,if语句结束。
如果是false,接着计算比较表达式2看其返回值是true还是false,
如果是true,就执行语句体2,if语句结束。
如果是false,接着计算比较表达式3看其返回值是true还是false,
如果都是false,就执行语句体n+1。
注意事项:最后一个else可以省略,但是建议不要省略,可以对范围外的错误值提示
30.switch语句:
格式:
switch(将要匹配的值) {
case值1:
语句体1;
break;
case值2:
语句体2;
break;
…
default:
语句体n+1;
break;
}
case穿透:
public classDemo3_Switch {/** 结论:switch语句中的break可以省略,但是会出现case穿透的现象
*
* 细节:
* 当表达式匹配成功之后,执行其对应的语句体,但是没有遇到break,这时候switch将会进入疯狂状态
* 不会再进行case的匹配的,只是疯狂的向下执行,寻找break
*
* 需求:键盘录入数值,根据数值打印内容
* 1-5输出工作日
* 6-7输出休息日
*
*
* 问题:
* 什么时候该使用if,什么时候该使用switch?
*
* 对于范围性的判断,使用if语句更加合适
*
* 一般匹配固定值的时候,switch更加合理*/
public static voidmain(String[] args) {
Scanner sc= newScanner(System.in);
System.out.println("请输入:");int week =sc.nextInt();switch(week) {case 1:case 2:case 3:case 4:case 5:
System.out.println("工作日");break;case 6:case 7:
System.out.println("休息日");break;default:
System.out.println("数据非法");break;
}
}
}
Java中加二怎么打_Java(一)(二)相关推荐
- Java中加载配置文件方式的总结
当需要在Java中加载配置文件的时候,有几个选项提供选择: · File · Class.getResourceAsStream · Class.getCla ...
- java中实现具有传递性吗_Java中volatile关键字详解,jvm内存模型,原子性、可见性、有序性...
一.Java内存模型 想要理解volatile为什么能确保可见性,就要先理解Java中的内存模型是什么样的. Java内存模型规定了所有的变量都存储在主内存中.每条线程中还有自己的工作内存,线程的工作 ...
- java中为什么要用注解_java中的注解,真的很重要,你理解了嘛?
这篇文章开始讲解java中的注解,在平时的开发当中我相信你或多或少的接触过注解.比如你可能都见过@override,它代表的就是一个注解.但是,为了更加清晰的去介绍注解,我还是先给出一个例子,让你能够 ...
- java中math类的作用_Java开发知识之Java的数字处理类Math类
Java开发知识之Java的数字处理类Math类 一丶Java.text.DecimalFormat类与NumberFormat类 首先 Java.text.DecimalFormat指的是Decim ...
- java中object类怎么赋值_Java面向对象之Object类
一.继承体系的老祖宗是Object类.(Object类是所有类的父类) 当我们不希望在程序中某些类被继承,某些方法被重写,某些数据被修订.就是final关键字闪亮登场的时候了. 一个类没有使用exte ...
- java中相对路径怎么写_java中如何使用相对路径读取文件
java中使用相对路径读取文件的方法:1.使用文件[File file = new File("src/test.txt")]方法:2.使用类的相对路径:3.使用当前线程的类加载器 ...
- java中用于选择按钮的语句_java程序员考试套题1
Java练习一 一.选择题 1.在Java中,下列()方法可以把JFrame对象jFrame的布局管理器设为FlowLayout 类型. A.jFrame.setLayout(new FlowLayo ...
- java中属性文件读取案例_java相关:Spring中属性文件properties的读取与使用详解
java相关:Spring中属性文件properties的读取与使用详解 发布于 2020-6-3| 复制链接 摘记: Spring中属性文件properties的读取与使用详解实际项目中,通常将一些 ...
- java中random的头文件_JAVA中的Random()函數
Java中存在着兩種Random函數: 一.java.lang.Math.Random; 調用這個Math.Random()函數能夠返回帶正號的double值,該值大於等於0.0且小於1.0,即取值范 ...
- Java中的几种引用类型_Java中的几种引用类型(转载)
Java中的对象引用主要有以下几种类型: 1)强可及对象(strongly reachable): 可以通过强引用访问的对象,一般来说,我们平时写代码的方式都是使用的强引用对象,比如下边的代码段: S ...
最新文章
- 还不懂Docker?一个故事安排的明明白白!
- sublime配置运行python文件的快捷键
- python2019慕课答案_中国大学慕课mooc2020Python编程基础章节测试答案
- [团队开发]总结下Server 2008 + TeamFoundation Server 2008安装过程
- 用python快速合并代码(方便软著申请)
- python数字字符串乘以2_Python基础(2)_数字和字符串类型
- 怎么实现hover_写CSS动效的常用套路(附demo的效果实现与源码)
- innodb事务锁的一些常见数据结构
- APP测试——经典面试题分享
- 3dmax蒙皮详细教程
- php excel导出科学计数法,php导出excel时科学计数法的处理方法
- 【高等数学笔记】格林公式、高斯公式、斯托克斯公式、场论
- 从EXCEL导入CAD后如何设置表格文字大小?
- 大数据职业理解_大数据的职业发展规划
- 开启充电计划升级职业生涯,让我们相聚社科院杜兰金融管理硕士项目
- SSM框架流浪动物管理系统宠物寄样收养领养宠物收容所管理(idea开发javaweb-javaee-j2ee-springboot)
- CH552-HID 键盘 鼠标
- 除了喊话SHEIN,AllyLikes还有阿里的另一层考量
- 考研由考生编号估计学校,报考人数和专业
- [生存志] 第59节 仲尼弟子座次
热门文章
- leetcode 1306. Jump Game III | 1306. 跳跃游戏 III(BFS)
- 使用 Flask-apidoc 自动生成 Api 文档
- 【Java入门】package包
- PAT1045 快速排序 (25 分)【4/6通过】
- java安全编码指南之:Thread API调用规则
- java 中的fork join框架
- C/C++中输入带空格的字符串 string 转 char*
- 数字签名、数字证书、对称加密算法、非对称加密算法、单向加密(散列算法)——Web网络系列学习笔记
- 【测试点2分析】:1020 月饼 (25分)(甲级 1070 Mooncake (25 分))
- 浅谈万进制算法与大数定理的结合(高精度乘除法,阶乘)