long类型转换为string_Java02 【数据类型转换、运算符、方法入门】_ProcedureDong的博客CSDN博客...

本文详细介绍了Java中的数据类型转换,包括自动转换和强制转换,并探讨了转换过程中可能遇到的问题,如精度损失和数据丢失。此外,还讲解了运算符的使用,包括算术运算符、赋值运算符、比较运算符和逻辑运算符,以及三元运算符的运用。最后,简述了方法的概念和调用,强调了方法在代码复用中的重要性。
摘要由CSDN通过智能技术生成

第一节数据类型转换

1.1自动转换:将取值范围小的类型 自动提示为取值范围大的类型

public class Demo{

public static void main(String[] args){

//System.out.println("Hello");

//

int num1 = 10;

long num2 = 20L;

double num3 = 30.0;

float num4 = 40.0F;

byte num5 = 10;

long num6 = num5;

System.out.println(num6);

int num7 = 10;

double num8 = num7;

System.out.println(num8);

int a = 10;

long b = a;

System.out.println(b);

}

}

转换图解

byte类型内存占有一个字符,在int类型运算时会提升为int类型,自动补充三个字节,因此计算后的结果会是int类型

e5ed2667a4ce36aa93c8dcc63b09bb60.png

转换规则-范围小的类型向范围大的类型提升,byte short char 直接提升为int

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

1.2强制转换:将取值范围大的类型转换为小的类型

转换格式:数据类型 变量名 = (数据类型)被转数据值

public class Demo{

public static void main(String[] args){

//

long num = 10L;

byte num2 = (byte)num;

System.out.println(num2);

double num3 = 20.5;

byte num4 = (byte)num3;

System.out.println(num4);

int a = 50;

byte b = (byte) a;

System.out.println(b);

}

}

转换图解

c332819a4eea72e7fb3832d18a561490.png

注意:

浮点型转成整数,直接取消小数点,可能会有数据精度损失;

int强转为short砍掉俩个字节,可能会有数据丢失;

1.3ASCII编码表:就是将人类的文字和一个十进制进行对应起来的一张表。

2aa6961ae5cdcc126b22b27498e0aedb.png

*将所有的英文字母,数字,符号都和十进制进行对应,因此产生了世界上第一章编码表(American Standard Code for inFormaion interchange 美国标准信息交换码)

1.4char与int互转

 将字符保存到计算机中,或者从计算机中读出字符(一个数字对应一个字符)

格式:

int 变量名 = 字符;

char 变量名 = (char)整数

public class Demo{

public static void main(String[] args){

char ch = '中'; //保存

int num = ch;

System.out.println(num);//20013

int n = 200130; //读取

char c = (char)n;

System.out.println(c);

//题

char c2 = 'a';

System.out.println(c2 + 1);//97 + 1

}

}

第二节运算符

2.1算数运算符(+ - * /  %(读作模 理解 取余) ++(自增) --(自减) ):对数据(变量/常量)进行运算

前四种和数学一样

public class Demo{

public static void main(String[] args){

int a = 24;

int b = 4;

// +

System.out.println(a+b);//28

// -

System.out.println(a-b);//20

// *

System.out.println(a*b);//96

// /

System.out.println(a/b);//6

int a = 10;

int b = 3;

//10/ 3 = 3.....1

System.out.println(a/b);//3

System.out.println(a%b);//1

}

}

加号注意事项

俩个作用

对俩个数字有求和作用

public class Demo{

public static void main(String[] args){

char ch = '中'; //保存

int num = ch;

System.out.println(num);//20013

int n = 200130; //读取

char c = (char)n;

System.out.println(c);

//题

char c2 = 'a';

System.out.println(c2 + 1);//97 + 1

}

}

对字符串有想接作用(连接字符串:当+号两边只要有一边出现字符串)

System.out.println("Hello"+"World");// "HelloWorld"

System.out.println("Hello"+3);//"Hello3"

System.out.println(3+"Hello");//"3Hello"

例子

public class Demo{

public static void main(String[] args){

//1,对两个数求和:当+号两边都是数值

int a = 24;

int b = 4;

System.out.println(a+b);//28

// +

//2,连接字符串:当+号两边只要有一边出现字符串

System.out.println("Hello"+"World");// "HelloWorld"

System.out.println("Hello"+3);//"Hello3"

System.out.println(3+"Hello");//"3Hello"

//例子1:

System.out.println(5+"+"+5+"="+(5+5));//5+5=10

//例子2:

int x = 10;

int y = 20;

System.out.println(x+"+"+y+"="+x+y);//10+20=1020

//System.out.println(10+"+"+20+"="+10+20);

}

}

除号的注意事项

1,两个整数相除,无条件去掉小数部分,要整数部分

public class Demo{

public static void main(String[] args){

//1,两个整数相除,无条件去掉小数部分,要整数部分

int a = 10;

int b = 2;

int c = 4;

double d = 4.0;

int e = 0;

System.out.println(a/b);//5

System.out.println(a/c);//2.5

}

}

2,让一个浮点数参与运算符

public class Demo{

public static void main(String[] args){

int a = 10;

int b = 2;

int c = 4;

double d = 4.0;

int e = 0;

//2,让一个浮点数参与运算符

System.out.println(a/d);//2.5

}

}

3,除数不能为 0

public class Demo{

public static void main(String[] args){

//1,两个整数相除,无条件去掉小数部分,要整数部分

int a = 10;

int b = 2;

int c = 4;

double d = 4.0;

int e = 0;

//3,除数不能为 0

//System.out.println(a/e);//编译不报错,运行奔溃 Exception 不正常

}

}

%(取余/模mod)

被除数/除数 = 商.....余数

public class Demo{

public static void main(String[] args){

int a = 10;

int b = 3;

//10/ 3 = 3.....1

System.out.println(a/b);//3

System.out.println(a%b);//1

//1,倍数关系/整除关系

//例子 奇数 不能被2 整除 偶数 能被2 整除

int c = 21;

System.out.println(c%2);//0 偶数 否则 奇数

}

}

++(自增)-不适用于常量

变量名 = 变量名 + 1;

变量名++;

格式

++变量名;

先加然后变量参与计算

变量名++;

先计算后加

public class Demo{

public static void main(String[] args){

int num = 10;

//前加加,++变量名;

//++num; // num = num+1;

//后加加,变量名++;

num ++;

System.out.println(num);

}

}

混合使用++(不要使用)

int a = 10;

int b = ++a;// a = 11 新值 int b = 11;

System.out.println(a);//11

System.out.println(b);//11

建议单独使用

int a = 10;

a++;//11

int b = a;//b = 11;

System.out.println(a);

System.out.println(b);

public class Demo{

public static void main(String[] args){

int x = 10;

x++;

++x;

System.out.println(x++);

}

}

赋值运算符-简化代码( = += -=  *= /= %=)

变量名 = 变量名+值;

变量名 += 值;

public class Demo{

public static void main(String[] args){

double salary = 10000.00;

// +=

salary += 1000;//相当于 salary = salary+1000;

System.out.println(salary);

// -=

salary -= 50; //相当于 salary = salary - 50;

System.out.println(salary);

// *=

salary *= 5 ;// 相当于 salary = salary * 5;

System.out.println(salary);

// /=

salary /= 10; //相当于 salary = salary/10;

System.out.println(salary);

// %=

int num =(int)salary;

num %= 100; // num = num%100;

System.out.println(num);

//隐含一个强转

short s = 10;

//s += 10;

s =(short) (s + 10); //byte short char 参与运算符自动提升int short+int ->int +int

System.out.println(s);

}

}

比较运算符-对俩个值进行比较得到一个boolean值(true/false)-> < >= <= ==是否相等!=是否不等

public class Demo{

public static void main(String[] args){

//模拟用户输入的数据

int a = 10;

int b = 20;

int c = 10;

// > 大于

System.out.println(a > b);//false

System.out.println(b > c);//true

// < 小于

System.out.println(a < b);//true

System.out.println(a < c );//false

// >= 大于或者等于

System.out.println(a >= c );//true

// <= 小于或者等于

System.out.println(a <= b );//true

// == 是否相等

System.out.println(a == c);//true

System.out.println(a == b);//false

// != 是否不等

System.out.println(a != c);//false

System.out.println(a != b);//true

}

}

逻辑运算符-对俩个boolean值进行运算, 结果也是boolean

包含

&& 双与/短路与 表示并且-

|| 双或/短路或 表示或者

! 非               表示相反

表达式1&&表达式2

表达式1||表达式2

!变量

&&--执行过程:表示表达式1执行完如果正确会执行表达式2 如果错误将不执行表达式2

&-----执行过程:表示表达式1执行完如果正确会执行表达式2 如果错误继续执行表达式2

public class Demo{

public static void main(String[] args){

//&& 双与 /短路与 表示并且

//例子

System.out.println(true&&true);//true

System.out.println(true&&false);//false

System.out.println(false&&true);//false

System.out.println(false&&false);//false

//口诀:全真为真,一假则假

System.out.println("======");

//|| 双或 /短路或 表示或者

System.out.println(true||true);//true

System.out.println(true||false);//true

System.out.println(false||true);//true

System.out.println(false||false);//false

System.out.println("======");

//口诀:有真为真,全假则假

// ! 非 表示取反

//口诀:真变假,假变真

System.out.println(!true);//false

System.out.println(!false);//true

System.out.println("======");

//短路 ||

boolean b = true;

System.out.println(true||!b);//true

System.out.println(b);//true

System.out.println("======");

//短路 &&

System.out.println(false&& !b);//false

System.out.println(b);//true

}

}

三元运算符(简化版的if  else函数)

java中唯一一个需要三个表达式参与运算的运算符

格式

布尔表达式?表达式1:表达式2

注意:前后的数据类型必须一致

结果必须被使用,直接打印或赋值给一个变量

e7cf49578fb6402184c52c69a6b15a4f.png

public class Demo{

public static void main(String[] args){

//模拟用户输入

int a = 20;

int b = 100;

//

int max = ( a > b ? a : b );

System.out.println(max);

System.out.println( a > b ? a : b );

boolean d = true;

/*

boolean max2 = (a > b ? a : d);

System.out.println(max2);*/

}

}

第三节方法

将相同的代码放在一起(封装),通过调用来使用,达到重复使用代码的目的

public class Demo{

public static void main(String[] args){

//

System.out.println("吃食堂午饭");

/*

System.out.println("写代码");

System.out.println("改BUG");

System.out.println("运行代码");*/

//方法的调用处

coding();

System.out.println("========================");

System.out.println("吃食堂晚饭");

/*

System.out.println("写代码");

System.out.println("改BUG");

System.out.println("运行代码");*/

//方法的调用处

coding();

}

//方法的定义

public static void coding(){

System.out.println("写代码");

System.out.println("改BUG");

System.out.println("运行代码");

}

}

方法的使用

1.先定义再用

2.定义格式

public static void  方法名(){

    //一堆代码 方法体

特点:无参无返回值的方法

3.调用格式

方法名();-必须在main程序入口中调用

public class Demo{

//2,方法定义之后一定要调用才能执行,目前我们就在main调用

public static void main(String[] args){

printMax();//方法调用处

}

//1,定义方法,无参无返回值的方法

public static void printMax(){

//模拟整数

int a = 10;

int b = 200;

int max = ( a > b ? a : b );

System.out.println(max);

}

}

775c45e3d158f785b2e9832b2a6b262c.png

方法的注意事项

先定义在使用

1.定义

   a.方法名 见名知意 小驼峰

   b.定义位置,定义在类中其他方法外

   c.可以定义无数个方法

   d.定义的顺序与执行的顺序无关

2.调用

   a.方法名必须准确

   b.方法必须调用才会执行里面的内容

   c.执行的顺序有调用的顺序决定

第四节JShell脚本工具(了解)

JDK9增加的一个功能

用于测试一段代码能不能执行或者执行结果是什么

执行地方类似于cmd窗口

怎么打开?

第一步打开cmd 输入JShell 回车

fa6f74923ff753b6c0e923d8a30fd183.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值