02.java的数据转换,运算符,方法等

02.java的数据转换,运算符,方法等

一,数据转换

1.1自动转换:

将取值小的类型自动转换为取值大的类型

byte,short,char->int->long->float->double

/*
数据类型转换:
      自动转换(隐性转换):将取值小的类型自动转换为取值大的类型
         转换规则:byte.short,char->int->long->float->double
      

      强制转换(显性转换):将大的数值转换为小点得类型
      
         强制类型转换注意事项:
              1.强制类型转换会导致有可能导致数据溢出,精度损失
              2. byte,short,char发生可以进行数学运算
              3.byte,short ,char发生数学运算时都会先提升为int类型,再进行运算
              4.布尔类型在java里不能进行数据转换

*/

public class DataType{
   public static void main(String[] args){
     //隐性转换
     long num1=100;//正常long 类型,数字后面需要加L,现在默认数字int转换为Long
     System.out.println(num1);
     
     

     //浮点型隐性转换:单精度浮点转换为双精度浮点
     double num2=2.5F;
     System.out.println(num2);
     
     //整数转换为小数
     double num3=100;
     System.out.println(num3);

     
     

     /*
     强制类型转换: 范围小的类型 范围小的变量名=(范围小的类型)数值;
     */
     //int num4=100L;//会报错
     //System.out.println(num4);
     int num4=(int)100L;
     System.out.println(num4);

     

     int num5=(int)6000000000L;//long强制转换为int
     System.out.println(num5);//1705032704,数据溢出
     
     int num6=(int)3.99;
     System.out.println(num6);//3,精度损失,小数位会丢失

     

     //char类型强制转换
     char word1='A';//65
     System.out.println(word1+1);//66,ASCII表
     
     byte num7=50;
     short num8=100;
     //    首先会类型转换byte+short=>int+int
     //byte num9=num7+num8;//会报错
     int num9=num7+num8;//150
     System.out.println(num9);   

   }
}

1.2 强制转换

1.将大的数值转换为小点得类型

2.强制转换需要注意:

  • 强制转换会导致数据溢出,精度丢失
  • byte,short,char可以进行算数运算
  • byte,short,char进行算术运算时会先将类型强制提升转换为int类型,再运算
  • 布尔类型不能进行转换

1.3 ASCII码表

在计算机的内部,所有数据都是由0和1组成

ASCII:American Standard Code for Information Interchange 美国标准信息交换码

人们规定

字符 数值
0 48
9 57
A 65
Z 90
a 97
z 122

小贴士:

在char类型和int类型计算的过程中,char类型的字符先查询编码表,得到97,再和1求和,结果为98。char类型提升
为了int类型。char类型内存2个字节,int类型内存4个字节。

二.运算符

2.1 算数运算符

算数运算符 表达式
+
-
**
/
取余(取模) %
==自增== ++
==自减== --

==++==:前置++;先++,再运算

​ 后置++;先运算,再++

==--==:前置--;先--,再运算

​ 后置--;先运算,再--

==+==:加号在连接两个字符串时起到的连接符作用

2.2 赋值运算符

赋值运算符 表达式意思
+= 先加法运算,再赋值
-= 先减法运算,再赋值
*= 先乘法运算,再赋值
/= 先除法运算,再赋值
%= 先取余运算,再赋值
= 等于

2.3 比较运算符

比较运算符 表达式意思
> 大于
< 小于
== 等于
>= 大于等于
<= 小于等于
!= 不等于

比较运算符的结果都是布尔值:true或者false

2.4 逻辑运算符

逻辑运算符 表达式意思
&& 1. 两边都是true,结果是true
2. 一边是false,结果是false
短路特点:符号左边是false,右边不再运算
|| 1. 两边都是false,结果是false
2. 一边是true,结果是true
短路特点: 符号左边是true,右边不再运算
1. ! true 结果是false
2. ! false结果是true

逻辑运算符,是用来连接两个布尔类型结果的运算符,运算结果都是布尔值 true 或者 false

2.5 三元运算符

数据类型 变量名 = 布尔类型表达式?结果1:结果2

==TIPS==:

  1. 三元运算符计算方式:
    1. 布尔类型表达式结果是 true,三元运算符整体结果为结果1,赋值给变量。
    2. 布尔类型表达式结果是 false,三元运算符整体结果为结果2,赋值给变量。
public static void main(String[] args) {
    int i = (1==2 ? 100 : 200);
    System.out.println(i);//200
    int j = (3<=4 ? 500 : 600);
    System.out.println(j);//500
}    

三.方法

3.1 方法定义:就是讲==功能==抽取出来,把代码定义在一个大括号内,形成一个单独的功能。

//方法格式
修饰符 数据类型 方法名(参数列表){
    方法体;
    return;    
}    

3.2 方法的调用

public static void main(String[] args) {
    //调用定义的方法method
    method();
}
//定义方法,被main方法调用
public static void method() {
   System.out.println("自己定义的方法,需要被main调用运行");  
}

3.3 注意事项

  • 方法注意事项:

    1. 一个方法不能定义在另一个方法里
    2. 方法只能定义在类外面
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容