大佬教程收集整理的这篇文章主要介绍了java基础语法(1),大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
【【Java基础】】
null不能用Syste
m.out.println()语句来输出
字符常量 ‘ ’中间有且仅有一个字符
数据范围和字节数不一定相关,例如float数据范围比long更加广泛,但是float是4字节,long是8字节。
字符串不是基本类型,而是引用类型。
浮点型可能只是一个近似值,并非精确的值
使用变量注意事项:
int a=1,b=2,c=3; 可以通过一条语句创建多个变量,不过不推荐这么写。
变量的使用不能超过作用域的范围,
作用域:从定义一个变量开始,一直到直接所属的大括号结束为止。
自动类型转换:
特点:代码不需要特殊处理,自动完成
规则:数据范围从小到大
强制类型转换:
特点:代码进行特殊的格式处理,不能自动完成。
格式:范围小的类型 范围小的变量=(范围小的类型)原本范围大的数据;
注意事项:
1.强制类型转换一般不推荐使用,因为有可能发生精度损失,数据溢出。
2
.byte/short/char都可以发生数学运算,例如加法“+”。
3
.byte/short/char这三种类型在运算的时候,都会被首先提升成为int类型,然后再计算。
ASCII字符值 48代表‘0’ 65代表
‘a’ 97代表
‘a’
char类型字符和int类型数字对照关系表(编码表):
ASCII码表: Amercian Standard Code for Information Interchange ,美国信息交换标准代码。
Unicode码表:万国码,也是数字和符号的对照关系,开头0~127部分和ASCII完全一样,但是从128开始含有更多字符。
取模(取余数):%
一旦运算当中有不同的数据类型,那么运算结果将会是数据类型范围大的那种。
任何数据类型和字符串连接的时候,结果都会
变成字符串。
自增、自减运算符:
1. 单独使用:不和其他任何操作混合,自己独立成为一个步骤。
2.混合使用:和其他操作混合,例如与赋值混合,或者与打印操作混合等。
使用区别:
1.单独
使用的时候前++和后++没有任何区别,也就是:++num和num++是完全一样的。
A.如果是前++,那么变量会立刻马上+1,然后拿着结果进行使用。【先加后用】
B.如果是后++,那么首先使用变量
本来的数值,然后再让变量+1。【先用后加】
3.变量才能使用自增自减运算符,常量不能使用
基本赋值运算符: =
复合赋值运算符: += -= *= /= (复合赋值运算符其中隐藏了一个强制类型转换)
逻辑运算符&& || ! 只能用于
Boolean值。
与“&&” ,或“||”,具有短路效果:如果根据左边已经可以判断得到最终结果,那么右边的代码将不再执行,从而节省一定的性能。
三元运算符格式: 数据类型 变量名称=条件判断 ? 表达式A :表达式B;
两种错误写法: int result=c>d?0.6:9;
c>d?0.6:9;
方法
1.方法定义的先后顺序无所谓
2.方法应该定义在类中,方法的定义不能产生嵌套包含关系。
3.方法定义好了之后,不会执行的,如果想要执行,一定要进行方法的调用。 方法调用格式: 方法名称(
);
4.如果方法有返回值,那么必须写上“return 返回值;”不能没有。
5.return
后面的返回值类型必须和方法的返回值类型对应起来 。
6.对于一个void没有返回
值的方法
不能写return
后面的返回值,只能写return而已;
7.对于void方法当中最后一行的return
可以省略不写
8.方法当中可以存在多个return语句,但必须保证同时只有一个会被执行到,两个return不能连写。
使用场景:当我们编写代码非常少的时候,而又不愿意编写类,main方法,也不愿意去编译和运行,这个时候可以使用JS
Hell
byte/short/char这三种类型在赋
值的时候,如果右侧赋
值的数值没有超过左侧范围,那么javac编译器将会自动隐式地为我们补上(byt
E)、(short)、(char)
1.如果没有超过左侧的范围,编译器补上强制。
3.给变量赋值时,若右侧全部是常量,没有任何变量,那么编译器javac将会直接将让干个常量表达式计算得到结果。
short result=5+8;//右侧全部是常量,没有任何变量参与运算,编译之后得到的.class字节码文件当中相当于【直接就是】:short result=13;
右侧的常量结果数值,没有超过左侧范围,所以正确。这称之为“编译器的常量优化”。
但是注意:一旦表达式当中有变量存在,那么编译器就不能进行这种优化。
switch语句的使用注意对象:
2.switch后面小括号当中只能是下列数据类型:
基本数据类型:byte/short/char/int
3.switch语句格式很灵活:前后顺序可以颠倒,而且break语句还
可以省略,“匹配哪一个case就从哪一个case往下执行,直到遇到break或者整体结束为止”。
while循环语句扩展格式:
初始化语句;
循环体;
步进语句;
}
初始化语句;
循环体
步进语句
for循环变量在小括号当中定义,只有循环内部才可以使用。while和do-while循环初始化语句
本来就在外面,所以出来循环之后还
可以继续使用
反循环次数确定的场景多用for循环,否则多用while循环。
dos窗口中 ctrl+c 结束死循环
IDEA常用快捷键:
快捷键 功能
Alt+Enter 导入包,自动修正代码
Ctrl+Y 删除光标所在行
Ctrl+D 复制光标所在行的内容,插入光标位置下面
Ctrl+Alt+L 格式化代码
Ctrl+/ 单行注释,再按取消注释
Ctrl+Shift+/ 选中代码注释,多上注释,再按取消注释
Alt+Shift+上下箭头 移动当前代码
println 换行打印 print不换行
循环次数.for变量 数组名称.for变量(变量为i是正序,r是倒序) 生成for循环语句
shift+F6 (笔记本不行)把所选的值进行全局修改。
Ctrl+鼠标点击 查看JDK代码
return 有两个作用:第一停止当前方法,第二将
后面的返回值还给调用处。return
后面的“返回值”必须和方法名称前面的“返回值类型”保持对应。
方法的三要素:返回值类型、方法名称、参数列表。
方法的三种调用格式:
2.打印调用:Syste
m.out.println(方法名称(参数)
);
3.赋值调用:数据类型 变量名称= 方法名称(参数
);
PS:返回值类型固定写为void,这种方法只能够单独调用,不能进行打印调用、赋值调用。
方法的重载与 参数个数、参数类型、参数的多类型顺序 相关;与 参数的名称、方法的返回值类型无关;
八进制是由数字0-7组成的,表达方式由数字0(零)开头的,
十六进制是由数字
0-9和字母A-F组成的,表达方式由数字0(零)加上小写字母x开头的,
【【 数组 】】
数组是一种引用类型,数组当中的多个数据类型必须统一,数组的长度在程序运行期间不可改变
数组常见的初始化方式:
动态初始化(指定长度): 数据类型[] 数组名称=new 数组类型[数组长度]; 其中new代表创建数组的动作,右侧括号当中表示保存数据数,是一个int数字。
静态初始化(指定内容): 数组类型[] 数组名称=new 数组类型[]
{};
静态初始化和动态初始话都可以拆分成两个部分,但是静态初始化的省略格式不能进行拆分,否则编译不通过。
直接打印数组名称,得到的是数组对应的:内存地址是哈希值。
访问数组元素的格式: 数组名称[索引值] 索引值从0开始,直到“数组长度-1”为止。
使用动态
初始化数组的时候,其中的元素将会自动用有默认值:
整型 默认值为0
浮点型 0.0
引用类型 null
静态初始化也有默认
值的过程,
只不过系统会自动将默认值替换成大括号当中具体的数值。
java的内存需要划分为五个部分:
1.栈(Stack) : 存放的都是方法中的局部变量,方法的运行一定要在栈当中运行。
局部变量:方法的参数,或者是方法内部
{}
内部的变量。
作用域:一旦超出作用域,立刻从栈内存当中消失。
2.堆(Hea
p) : 凡是new出来的东西都在堆中。
堆内存里面的东西都有一个地址值: 16进制 堆内存里面的数据都有默认值(成员变量)
3.方法区(Method Area):存储.class相关信息,包含方法的信息。
4.本地方法栈(Native Method Stack):与操作系统相关。
5.寄存器(pc Register) :与CUP相关。
所有的引用类型变量都可以赋值为一个null值,但是代表其中什么都没有。
数组必须进行new初始化才能使用其中的元素,如果只是赋值了一个null,没有进行new创建,那么将
会发生空指针异常: NullPointerException
获取数组的长度: 数组名称.length 这将会得到一个int数字,代表数组的长度;数组一旦创建程序运行期间,长度不可改变。
初始化语句: int min
=0,max=array.length-1
判断条件: min<max
步进表达式: min++,max--
循环体: 用第三个变量倒手
int[] array=
{30,40,50,60,70,80};
for ( int min
=0,max=array.length-1; min<max;min++,max--)
{
int temp=arra
Y[R_593_11845@in];
arra
Y[R_593_11845@in]=arra
Y[R_593_11845@ax];
arra
Y[R_593_11845@ax]=temp;}
数组可以作为方法的参数,当调用方法的时候,向方法的小括号进行传参,传递进去的其实是数组的地址值。
一个方法可以有0、1、多个参数,但是只能有0或者1个返回值,不能有多个返回值。
如果希望一个方法中产生了多个结果数据进行返回,可以使用一个数组作为返回值类型。数组作为方法的参数和返回值,传递和返回的其实都是数组的地址值
大佬总结
以上是大佬教程为你收集整理的java基础语法(1)全部内容,希望文章能够帮你解决java基础语法(1)所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。