Java学习笔记
文章平均质量分 64
ckhcxy
这个作者很懒,什么都没留下…
展开
-
数组的定义与使用(一)
for-each 是 for 循环的另外一种使用方式. 能够更方便的完成对数组的遍历. 可以避免循环条件和更新语句写错。下标从0开始,介于[0,N)之间不包含N,N为元素个数,不能越界,否则会报出下标越界异常。通过观察代码可以发现,对数组中每个元素的操作都是相同的,则可以使用循环来进行打印。3.每个空间有自己的编号,起始位置的编号为0,即数组的下标。上述代码的缺点是:如果同学多了起来,需要挨个创造变量么?那么Java中存在储存相同类型多个数据的类型就是本节学习的。2.数组的空间是连在一起的。原创 2024-09-12 17:23:41 · 595 阅读 · 0 评论 -
Java递归
递归的程序的执行过程不太容易理解,要想理解清楚递归,必须先理解清楚“方法的执行过程”,尤其是“方法执行结束之后,回到调用位置继续往下执行”。每一次的方法调用就称为一个 "栈帧", 每个栈帧中包含了这次调用的参数是哪些, 返回到哪里继续执行等信息.方法调用的时候, 会有一个 "栈" 这样的内存空间描述当前的调用关系. 称为调用栈.递归相当于数学上的"数学归纳法",有一个起始条件,然后有一个递推公式。一个方法在执行过程中调用自身,就称为"递归"。"从前有座山,山上有座庙..."原创 2024-05-11 20:34:34 · 419 阅读 · 1 评论 -
Java方法的重载
上述代码确实可以解决问题,但不友好的地方是:需要提供许多不同的方法名,而取名字本来就是让人头疼的事 情。在自然语言中,一个词语如果有多重含义,那么就说该词语被重载了,具体代表什么含义需要结合具体的场景。在Java中方法也是可以重载的。比如:方法中不能定义两个名字一样的变量,参数列表必须不同(参数的个数不同、参数的类型不同、类型的次序必须不同)方法签名即:经过编译器编译修改过后方法最终的名字。由于参数类型不匹配,所以不能直接使用现有的 add 方法。在自然语言中,经常会出现“一词多义”的现象,比如:“好人”原创 2024-05-09 09:56:11 · 386 阅读 · 1 评论 -
Java方法的使用
实参a和b是main方法中的两个变量,其空间在main方法的栈(一块特殊的内存空间)中,而形参x和y是swap方法中的两个变量,x和y的空间在swap方法运行时的栈中,因此:实参a和b 与 形参x和y是两个没有任何关联性的变量,调用方法--->传递参数--->找到方法地址--->执行被调方法的方法体--->被调方法结束返回--->回到主调方法继续往下 执行。可以看到,在swap函数交换之后,形参x和y的值发生了改变,但是main方法中a和b还是交换之前的值,即没有交换成功。原创 2024-05-06 21:28:58 · 840 阅读 · 0 评论 -
Java练习
【代码】Java练习。原创 2024-05-04 21:39:01 · 664 阅读 · 1 评论 -
Java输入输出
系统自动生成一个随机整数(1-100),然后由用户输入一个猜测的数字,如果输入的数字,如果输入的数字比该随机数小。提示 "低 了", 如果输入的数字比该随机数大, 提示 "高了" , 如果输入的数字和随机数相等, 则提示 "猜对了" .当循环输入多个数据的时候,使用ctrl + z来结束输入(Windows 上使用ctrl + z,Linux / Mac 上使用ctrl+d )在后续oj题中,遇到IO类型算法题,有各种循环输入的要求,后续给大家介绍。的格式化输出方式和C语言的。原创 2024-05-04 17:14:19 · 225 阅读 · 1 评论 -
Java顺序结构
为 while 的语句体(这是一个空语句), 实际的 { } 部分和循环无关. 此时循环条件 num <= 10 恒成立, 导致代码 死循环了.①②③④--->②③④--->②③④--->②③④--->②③④--->②③④--->...--->②为false,循环结束。和 if 类似,while 下面的语句可以不写 { } ,但是不写的时候只能支持一条语句,建议还是加上 { }1.和 if 类似,for 下面的语句可以不写 { } 但是不写的时候只能支持一条语句,建议还是加上 { }原创 2024-04-20 21:37:13 · 809 阅读 · 4 评论 -
Java逻辑控制
我幡然醒悟,不好好学习可能要卖红薯,奋发图强可能离梦想会更近,于是我选择来到比特,从此:早上6:00起床--->看书敲代码--->上课+看编程书籍--->吃午饭--->刷题--->上课+看书--->吃晚饭--->总结--->看科技新闻--->睡觉。早上8:00起床--->洗漱--->吃早饭--->上课--->吃午饭--->上课--->运动--->吃完饭--->玩手机--->睡觉。秋招来了,我用自己所学,在比特老师的帮助与鼓励下,一次次刷新着手中offer的记录,那一刻,我被自己感动了 ~~~原创 2024-04-19 12:10:20 · 832 阅读 · 8 评论 -
Java运算符
【本节目标】 1.熟练掌握各种运算符计算机的最基本的用途之一就是执行数学运算,比如:上述和等就是运算符,即:对操作数进行操作时的符号,不同运算符操作的含义不同。作为一门计算机语言,Java也提供了一套丰富的运算符来操纵变量。Java中运算符可分为以下:算数运算符(+ - * /),关系运算符(< > ==),逻辑运算符,位运算符,移位运算符,以及条件运算符等。特殊情况需要简单记忆算数异常:答案得出:Infinity(无穷(大);巨大数目;无限距;无限远;)注意:都是二元运算符,使用原创 2024-04-09 09:39:18 · 964 阅读 · 8 评论 -
数据类型完结(皮毛)
运算的时候是从左向右算的,a和b已经算成30了,才加了一个字符串,所以出来的答案就是。本节只是对字符串进行简单的讲解,更深的后续学习!(C语言没有字符串类型)原创 2024-04-05 22:37:07 · 461 阅读 · 4 评论 -
Java类型提升
byte和byte都是相同类型,但是出现编译报错,原因是,虽然a和b都是byte类型,但是计算a + b会将a和b都提升称为int类型,再进行计算,得到的结果也是int类型,这时赋值给c,就会出现上述错误。由于计算机的CPU通常是按照4个字节为单位从内存中读写数据,为了硬件上实现方便,诸如byte和short这种低于4个字节的类型,会先提升成int,再参与计算。对于short,byte这种比4个字节小的类型,先会提升成4个字节的int,再运。不同类型的数据混合运算,范围小的会提升成范围大的。原创 2024-04-02 22:04:47 · 163 阅读 · 2 评论 -
Java类型转换
在Java中,当参与运算数据类型不一致时,就会进行类型转换。强制类型转换:当进行操作的时候,代码需要经过一定的格式处理,不能自动完成。特点:数据范围大的到数据范围小的。Java作为一个强类型编程语言,当不同类型之间的变量相互赋值的时候,会有较严格的校验。不同数字类型的变量之间赋值,表示范围更小的类型能隐式转换成范围较大的类型。将一个字面值常量进行赋值的时候,Java会自动针对数字范围进行检查。如果需要把范围大的类型赋值给范围小的,需要强制类型转换,但是。强制类型转换不一定能成功,不相干的类型不能相互转换。原创 2024-04-02 12:13:16 · 185 阅读 · 2 评论 -
第一篇Java
一个Java文件中,只能有一个public修饰的类 这个类被public修饰 类名一定要和文件名是一致的,一个类对应一个字节码文件。通过观察上述程序发现:public,class以及static等颜色会发生变化,将这些具有特殊含义的标识符成为关键字。类名 如果这个类被public修饰,一定要和文件名一致(tip:不管是任何语言,main方法就是程序的入口)(常见于方法和类之上描述方法和类的作用),可以被javadoc工具解析,生成一套以网页形式体现的程序说明文档。类名:每个单词的首字母大写(大驼峰)原创 2024-03-26 17:17:46 · 545 阅读 · 2 评论 -
Java字面常量与数据类型
1.字符串常量:由""括起来的,比如“12345”,“hellow world”,“您好”2.整形常量:程序中直接写的数字(注意没有小数点),比如:100,1000。(tip:字符串,整形,浮点型,字符型,以及布尔型,在Java中都称为数据类型。其中:100,3.14,’A‘,true/false都是常量。3.浮点数常量:程序中直接写的小数,比如:3.14,0.49。4.字符常量:由单引号括起来的单个字符,比如:’A‘,’1‘,比如:一个礼拜七天,一年12个月等。6.空常量:null。原创 2024-03-26 19:39:00 · 270 阅读 · 6 评论 -
Long short byte
思考:byte,short,int,long都可以定义整形变量,为什么要给出四种不同的类型呢?short的表示范围:-32768~32767。长整型的表示范围为:-2^63~2^63-1。长整型变量的初始值后面加L或者l,推荐加L。使用时注意不要超过范围(一般使用比较少)长整型不论在哪个系统下都占8个字节。short在任何系统下都占2个字节。byte的范围是:-128~127。short的包装类型为Short。byte在任何系统下都占1个字节。字节的包装类型为Byte。long的包装类型为L。原创 2024-03-31 21:14:06 · 235 阅读 · 2 评论 -
浮点型变量
float类型在Java中占四个字节,同样遵循IEEE 754标准,由于表示的数据精度范围较小,一般在工程上用到浮点数都优先考虑double,不太推荐float,float的包装类型为Float。double类型的内存布局遵守 IEEE 754 标准(和C语言一样),尝试使用有限的空间表示可能无限小的小数。势必会存在一定精度的误差,因此浮点数是一个近似值,并不是精确值。浮点数与整数在内存中的存储方式不同,不能单纯使用2^n的形式来计算。:如果需要用到0.5,需要使用double类型计算。原创 2024-03-31 22:02:07 · 177 阅读 · 4 评论 -
字符型+布尔型
3.Java虚拟机规范中,并没有明确规定boolean占几个字节,也没有专门用来处理boolean的字节码指令,在Oracle公司的虚拟机视线中,boolean占1个字节。计算机中的字符本质是一个整数,在C语言中使用ASCII表示字符,而Java中使用Unicode表示字符,因此一个字符占用两个字节,表示的字符种类更多,包括中文。布尔类型常用来表示真假,在现实生活中也是经常出现的,比如:听说xxx同学买彩票中了一个小目标...,听到之后估计大部分人的反应就是:我x,尊嘟假嘟?关于字符编码方式的讨论,参见。原创 2024-04-01 08:40:14 · 236 阅读 · 0 评论