摘要:短路与短路或在包下继续新建一个类,在方法中定义三个类型的变量,任意赋值,判断与的关系是大于时的结果,小于时的结果,等于时的结果,将三个结果赋值给一个变量,并打印输出每一个结果。
面向过程的编程
1. java中的元素
关键字:编程已经规定好的单词或词组
标识符:自定义取名(不能使用关键字);只能由英文大小写、数字、美元符号;且数字不能开头
变量:会改变的量
常量:不变的量、恒定
注释:单行注释/开始 + /结尾 ;多行注释/ 开始 + /结尾;文档注释/** 开始 + /结尾
2.命名规范(见名知义):
创建工程,工程名:==英文 + 版本号== ;如:Tank_V1.0
在src下创建包,包名:==由一个单词构成,全部小写== ;如:com.公司名.test
创建类Class(java文件),类名:==首字母一定要大写== ;如:TestOne
创建方法,方法名:==第一个单词的首字母一定要小写,遵循驼峰命名法== ;如:mainTest
mian方法:__java的程序入口__
定义变量,变量名:==第一个单词的首字母一定要小写,遵循驼峰命名法== ;如:resOne
定义常量,常量名:==全部大写,由多个单词构成用下划线隔开== ;如:HOW_ARE_YOU
3.数据类型
编程的本质:各种数据的存储和运算
电脑最小的存储单位:bit位
1字节 = 8位
1个字符 = 2字节
1KB = 1024字节
1MB = 1024KB
基本数据类型
数字类型
类型 | 写法 | 型 | 占位 | 取值范围 | 例子 |
---|---|---|---|---|---|
整数 | byte | 字节型 | 8位 | -128~127 | |
short | 短整型 | 16位 | ±30000 | ||
int | 整型 | 32位 | ±20亿左右 | ||
long | 长整型 | 64位 | ±2^10^ | ||
小数 | float | 单精度浮点型 | 32位 | ±3.4*10^38^ | |
double | 双精度浮点型 | 64位 | ±1.7*10^303^ |
● 文字类型
类型 | 写法 | 型 | 占位 | 取值范围 | 例子 |
---|---|---|---|---|---|
字符型 | char | 仅仅表示一个字符 | 16位 | 0~65535 | "a" "b" "我" |
● 布尔类型
类型 | 写法 | 取值范围 | 例子 |
---|---|---|---|
布尔型 | boolean | true/false |
引用数据类型(复合数据类型):数组,类(对象类型),接口
4. 运算符
算数运算符:+ - * / % ++ --
关系运算符:> < >= <= == !=
逻辑运算符:短路与&& 短路或|| ;与& 或| ;非!;==(短路运算结果相同、效率不同,短路更高)==
赋值运算符:= += -= *= /= %= 如:a+=b → a=a+b
字符串拼接运算符:字符串和其他的数据进行拼接 结果还是一个字符串 String
位运算(了解):把数据转换成二进制的数:>> 右移、 << 左移 、>>>无符号右移、& 、|、!、^ 异或、~取反
三元运算符: 格式:==(判断式)?a:b== 如果判断式为true,则返回a的值,否则返回b的值
定义变量:数据类型 取个名字 = 值;
两个整数进行运算,结果一定是 ==整数==,如果想要出现小数,其中一个变量是 ==小数类型double==
在混合运算中:char byte short → int → long → float → double
强制转换类型:(想转的类型)数据
练习1.新建一个JAVA工程HelloJava,创建一个test包,新建一个FristDemo类,写一个main方法,定义两个int 类型的变量 a 和 b ,分别打印输出a与b的‘加/减/乘/除/取余’的结果。
package test; public class FristDemo { public static void main(String[] args){ int a = 4; int b = 2; System.out.println("a+b="+(a+b)); System.out.println("a-b="+(a-b)); System.out.println("a*b="+(a*b)); System.out.println("a/b="+(a/b)); } }
2.在test包下继续创建一个SecondDemo类,写一个main方法,定义一个int类型的变量 i ,输出这个变量的3次方的结果。
package test; public class SecondDemo { public static void main(String[] args) { int i = 2; System.out.println("i的三次方=" + ((int)Math.pow(i,3))); } }
3.在test包下继续创建一个ThirdDemo类,写一个main方法,定义两个double类型的变量df和ds,分别将他们的‘加/减/乘/除的结果赋值给一个新的变量res,并打印输出每一个结果。
package test; public class ThirdDemo { public static void main(String[] args){ double df = 3; double ds = 6; double res = df+ds; System.out.println("df+ds="+res); res = df-ds; System.out.println("df-ds="+res); res = df*ds; System.out.println("df*ds="+res); res = df/ds; System.out.println("df/ds="+res); } }
4.新建一个工程MyProject,创建一个demo包,新建一个TestOne类,在main方法中定义两个boolean 类型的变量flag和mark ,将他们的“短路与”和“短路或”的逻辑运算结果赋值给新的变量result,并打印输出这两个结果。
package demo; public class TestOne { public static void main(String[] args){ boolean flag= false; boolean mark= true; boolean result = flag && mark; System.out.println("短路与:"+result); result = flag || mark; System.out.println("短路或:"+result); } }
5.在demo包下继续新建一个TestTwo类,在main方法中定义三个int类型的变量 x y z,任意赋值,判断(x+y)与 z 的关系是“大于”时的结果,“小于”时的结果,“等于”时的结果,将三个结果赋值给一个变量res,并打印输出每一个结果。
package demo; public class TestTwo { public static void main(String[] args) { int x = 1; int y = 2; int z = 5; boolean res ; res = (x+y)>z?true:false; System.out.println("(x+y)>z为:"+res); res = (x+y)6.在demo包下继续新建一个TestThree类,在main方法中定义三个 int类型变量 x, y, z,求出三个数中最小的那个数是多少,打印输出。(用三元运算符)。
package demo; public class TestThree { public static void main(String[] args){ int x = 3; int y = 1; int z = 2; int min1 = x7.在MyProject这个工程中创建一个hello包,新建一个TestSwap类,在main方法中任意定义两个int类型的变量a=13和b=7,交换a和b的值,并打印交换后的结果(两种方法)
package hello; public class TestSwap { public static void main(String[] args) { int a = 13; int b = 7; // 第一种 int z; z = a; a = b; b = z; System.out.println("第一种:交换后a=" + a + " " + "b=" + b); // 第二种 int temp = a + b; a = temp - b; b = temp - a; System.out.println("第二种:交换后a=" + a + " " + "b=" + b); // 第三种 swap(a, b); System.out.println("第三种:交换后a=" + a + " " + "b=" + b); } public static void swap(int a, int b) { a = 13; b = 7; } }
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/75272.html
摘要:最终形成可以被虚拟机最直接使用的类型的过程就是虚拟机的类加载机制。即重写一个类加载器的方法验证验证是连接阶段的第一步,这一阶段的目的是为了确保文件的字节流中包含的信息符合当前虚拟机的要求,并且不会危害虚拟机自身的安全。 《深入理解Java虚拟机:JVM高级特性与最佳实践(第二版》读书笔记与常见相关面试题总结 本节常见面试题(推荐带着问题阅读,问题答案在文中都有提到): 简单说说类加载过...
摘要:一类加载的过程虚拟机加载类主要有五个过程加载验证准备解析和初始化。初始化在虚拟机中严格规定需要对类进行初始化的,有下面五种情况遇到,,或者这条字节码指令时。 在这本书里面,在讲到类初始化的五种情况时,提及了一个比较有趣的事情。先来看看下面的代码 public class SubClass { static{ System.err.println(I m your...
摘要:当你在程序中对象时,有没有考虑过是如何把静态的字节码转化为运行时对象的呢,这个问题看似简单,但清楚的同学相信也不会太多,这篇文章首先介绍类初始化的机制,然后给出几个易出错的实例来分析,帮助大家更好理解这个知识点。 当你在 Java 程序中new对象时,有没有考虑过 JVM 是如何把静态的字节码(byte code)转化为运行时对象的呢,这个问题看似简单,但清楚的同学相信也不会太多,这篇...
阅读 732·2021-11-23 09:51
阅读 2429·2021-10-11 11:10
阅读 1298·2021-09-23 11:21
阅读 1089·2021-09-10 10:50
阅读 881·2019-08-30 15:54
阅读 3325·2019-08-30 15:53
阅读 3286·2019-08-30 15:53
阅读 3185·2019-08-29 17:23